Javascript 如何制作;更改事件“;使用.attr()时,使用选择下拉菜单

Javascript 如何制作;更改事件“;使用.attr()时,使用选择下拉菜单,javascript,jquery,html,Javascript,Jquery,Html,我有下面的选择下拉菜单: <select id="select-param-num"> <option value='0'>0</option> <option value='1'>1</option> <option value='2'>2</option> </select> 然后在初始化过程中,我将下拉菜单设置为如下特定值: $("select#select-param-num op

我有下面的选择下拉菜单:

 <select id="select-param-num">
 <option value='0'>0</option>
 <option value='1'>1</option>
 <option value='2'>2</option>
 </select>
然后在初始化过程中,我将下拉菜单设置为如下特定值:

$("select#select-param-num option[value=2]").attr('selected', true);
我原以为会调用.change()来自动更新我的页面,但它没有

你有什么建议让它发生吗


谢谢

只要触发事件,有三种方式:

$('#select-param-num').change(); //same as .trigger('change')
$('#select-param-num').trigger('change'); //same as .change()
$('#select-param-num').triggerHandler('change'); //same as others but just because change event doesn't bubble

只需触发事件,有三种方式:

$('#select-param-num').change(); //same as .trigger('change')
$('#select-param-num').trigger('change'); //same as .change()
$('#select-param-num').triggerHandler('change'); //same as others but just because change event doesn't bubble
用于运行事件处理代码:

$("#select-param-num").triggerHandler('change');
您也不应该使用
.attr
来设置下拉列表的值。改为这样做:

$("#select-param-num").val("2");
用于运行事件处理代码:

$("#select-param-num").triggerHandler('change');
您也不应该使用
.attr
来设置下拉列表的值。改为这样做:

$("#select-param-num").val("2");

你可以用触发器

$('#select-param-num').trigger('change');

您可以使用触发器进行此操作

$('#select-param-num').trigger('change');

在您的选择中,没有值为6的选项。如果您添加了它,并对代码做了一点修改,它就可以工作了。请看这里:

代码

$('#select-param-num').change(function () {    
    $("select#select-param-num option[value=6]").attr('selected', 'selected');
}); 

在select中,没有值为6的选项。如果您添加了它,并对代码做了一点修改,它就可以工作了。请看这里:

代码

$('#select-param-num').change(function () {    
    $("select#select-param-num option[value=6]").attr('selected', 'selected');
}); 

在select中,没有值为6的选项。与使用任何其他输入一样,您应该使用
.val()
设置select值,而不是使用
attr()
。我不确定这是否触发了更改事件—请尝试一次。val();但这不会更新“我的页面”上的下拉菜单文本,只设置了值。在选择中,没有值为6的选项。与使用
attr()
不同,您应该像使用任何其他输入一样使用
.val()
设置选择值。我不确定这是否触发了更改事件—请尝试一次。val();但这不会更新我页面上的下拉菜单文本,只设置了值$(“选择参数数值”).val(“2”);但这不会更新下拉菜单文本,只更新值$(“选择参数数值”).val(“2”);但这不会更新下拉菜单文本,只更新值。