Javascript 当选择选项更改无法正常工作时触发单击按钮
我有以下代码可以在状态更改时触发单击按钮:Javascript 当选择选项更改无法正常工作时触发单击按钮,javascript,jquery,html,Javascript,Jquery,Html,我有以下代码可以在状态更改时触发单击按钮: $('#selectstate').on('change', function(){ $("[name='update']:submit").trigger("click"); }); 它工作正常,但问题是我必须准确地单击列表的箭头,如下所示。如果我点击空白以显示列表,按钮将自动触发。有什么解决办法吗 示例HTML代码: 我想你可以简单地提交你的表格 var yourForm = document.forms["update"]; // y
$('#selectstate').on('change', function(){
$("[name='update']:submit").trigger("click");
});
它工作正常,但问题是我必须准确地单击列表的箭头,如下所示。如果我点击空白以显示列表,按钮将自动触发。有什么解决办法吗
示例HTML代码:
我想你可以简单地提交你的表格
var yourForm = document.forms["update"]; // your form name is "update"
yourForm.submit();
如果确实希望在更改选择框时单击,请创建一个单击事件并触发它
var selectBox = document.getElementById("yourSelect");
selectBox.onchange = function()
{
// call the fireClick function passing the element
fireClick(link); // pass the element in which you want to trigger
}
function fireClick(element)
{
var ev = document.createEvent("MouseEvents");
ev.initMouseEvent("click", true, false, self, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
element.dispatchEvent(ev);
}
更简单的方法
selectBox.onchange = function()
{
var submitButton = document.getElementById("button");
submitButton.click();
}
我不明白为什么点击select的空格会导致按钮点击?另外,我建议您触发表单的submit事件,而不是单击submit按钮。您确定代码中没有绑定到$'selectstate'的rouge click处理程序吗?正如@rorymcrossan所提到的,您只需通过调用$'myForm'.submit来提交表单;
selectBox.onchange = function()
{
var submitButton = document.getElementById("button");
submitButton.click();
}