Как сделать так, чтобы веб-форма автоматически отправлялась в раскрывающемся списке - PullRequest
4 голосов
/ 17 марта 2011

На моей странице есть форма, подобная приведенной ниже;

<form name="testform" id="testform" action="test.php" method="get">
  <input name="field1" id="field1" type="text" value="">
  <input name="field2" id="field2" type="text" value="">
  <select name="dropdown" id="dropdown">
    <option value="option1" selected="selected">option1</option>
    <option value="option2">option2</option>
    <option value="option3">option3</option>
  </select>
  <input type="submit" name="Submit" value="Submit" id="Submit">
</form>

Я хочу, чтобы форма автоматически отправлялась при выборе пользователем параметра в раскрывающемся меню. Как я могу сделать это с или без использования JavaScript (с или без jQuery)?

Заранее спасибо ... :)

blasteralfred

Ответы [ 4 ]

10 голосов
/ 17 марта 2011

Нажмите (или выберите)? В этом случае пользователь не сможет сделать какой-либо выбор. Вы, вероятно, имеете в виду, как только будет выбран другой вариант. Если так

<select name="dropdown" id="dropdown" onchange="this.form.submit()">

Если используется jQuery , вместо встроенного JavaScript следует использовать ненавязчивый обработчик событий change .

$(function(){
    $("#dropdown").change( function(e) {
        this.form.submit();
    });
});

Используйте для , если элементы формы динамически добавляются в DOM

$(function(){
    $('#testform').on( "change", "#dropdown", function(e) {
        this.form.submit();
    });
});
7 голосов
/ 17 марта 2011

Вам нужно будет использовать событие jQuery change ().

('#dropdown').change( function() { ('#testform').submit(); })
3 голосов
/ 17 марта 2011

Я думаю

$('#dropdown').change(function () { $('Submit').click(); } );

добьется цели!

0 голосов
/ 27 июня 2012

Здесь Ответ

<form name="testform" id="testform" action="test.php" method="get">
              <input name="field1" id="field1" type="text" value="">
              <input name="field2" id="field2" type="text" value="">
              <select name="dropdown" id="dropdown" onChange="document.testform.submit()">
            <option value="option1" selected="selected">option1</option>
            <option value="option2">option2</option>
            <option value="option3">option3</option>
            </select>
  </form>
...