我有一些旅行者的下拉菜单。
当我更改值(比如选择2)时,它会显示更多下拉列表(在本例中为2个下拉列表),用于输入旅行者的年龄。
这是现有功能。现在我创建了另一个下拉列表,在这里我编写了一个onChange
函数来设置旅行者的价值:
document.getElementById("travellers").value="1";
我希望年龄的额外下拉列表能够自行显示,而这种情况不会发生。
如何使用jQuery / JavaScript实现这一点?
答案 0 :(得分:2)
当您以编程方式修改值时,事件将不会触发。你需要触发事件。
使用vanilla JS
var select = document.getElementById("travellers");
//fire the event
if("createEvent" in document) { //NON IE browsers
var evt = document.createEvent("HTMLEvents");
evt.initEvent("change", false, true);
select.dispatchEvent(evt);
} else { //IE
var evt = document.createEventObject();
select.fireEvent("onchange", evt);
}
正如您使用jQuery标记了您的问题,您可以使用.trigger()
$("#travellers").trigger("change");