jQuery привязывает событие нажатия кнопки к каждой опции выбранного элемента - PullRequest
0 голосов
/ 03 февраля 2019

Я пытаюсь сделать событие нажатия кнопки отправки для каждого элемента option выбора.

Вот мой сценарий:

var selectObj = $("#selectObj");

selectObj.find("option").each(function(){
    selectObj.val($(this).val());
    $("#submitBtn").click();
});

Но он работает только в последнемэлемент option.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2019

Но он работает только с последним элементом option.

Я не знаю, чего вы пытаетесь достичь, но ваш код должен работать.

Также не уверен насчет использования selectObj.val($(this).val());

var selectObj = $("#selectObj");

selectObj.find("option").each(function(){
    //selectObj.val($(this).val());
    $("#submitBtn").click(myFunc($(this).val()));
});

function myFunc(val){
  console.log(val);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="selectObj">
  <option value="first">First</option>
  <option value="second">Second</option>
</select>

<button type="button" id="submitBtn" >Test</button>
0 голосов
/ 03 февраля 2019

Значение будет установлено для элемента в событии change.

var select;
$(document).ready(function(){
$('#s > option').each( function(e){
select=$('#s > option')[e].innerHTML
a(select);
})
function a(val)
{
$('button').trigger('click');
console.log('The values is ' +val)
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="s"><option>a</option>
<option>d</option><option>b</option>
<option>e</option><option>c</option></select>
<button type="submit">Submit</button>
...