我在我选择的元素的变化事件上绑定了一个事件:
$('select').on('change', '', function (e) {
});
当发生更改事件时,我如何访问被选中的元素?
我在我选择的元素的变化事件上绑定了一个事件:
$('select').on('change', '', function (e) {
});
当发生更改事件时,我如何访问被选中的元素?
当前回答
<select id="selectId">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
$('#selectId').on('change', function () {
var selectVal = $("#selectId option:selected").val();
});
首先创建一个选择选项。之后,使用jquery,你可以得到当前选择的值,当用户改变选择选项值。
其他回答
另一种获取选定值的简便方法是,
$('#selectElement').on('change',function(){
var selectedVal = $(this).val();
^^^^ ^^^^ -> presents #selectElement selected value
|
v
presents #selectElement,
});
$('#_SelectID').change(function () {
var SelectedText = $('option:selected',this).text();
var SelectedValue = $('option:selected',this).val();
});
<select id="selectId">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
$('#selectId').on('change', function () {
var selectVal = $("#selectId option:selected").val();
});
首先创建一个选择选项。之后,使用jquery,你可以得到当前选择的值,当用户改变选择选项值。
我觉得这样更短更干净。此外,如果有多个选定项,您可以迭代;
$('select').on('change', function () {
var selectedValue = this.selectedOptions[0].value;
var selectedText = this.selectedOptions[0].text;
});
委托替代
如果有人正在为他们的侦听器使用委托方法,请使用e.target(它将引用select元素)。
$('#myform').on('change', 'select', function (e) {
var val = $(e.target).val();
var text = $(e.target).find("option:selected").text(); //only time the find is required
var name = $(e.target).attr('name');
}
JSFiddle演示