Javascript 如何为所选对象触发更改事件(jQuery)
在我点击重置按钮之前,我在所选(下拉列表)中选择“公司”。事件在我单击“重置”后正常发生。我再次选择“公司”,但dropdownlist中的事件Javascript 如何为所选对象触发更改事件(jQuery),javascript,jquery,jquery-chosen,Javascript,Jquery,Jquery Chosen,在我点击重置按钮之前,我在所选(下拉列表)中选择“公司”。事件在我单击“重置”后正常发生。我再次选择“公司”,但dropdownlist中的事件change未发生 有谁能告诉我,在单击重置按钮和相同的元素后,如何触发dropdownlist的更改事件 到目前为止,我掌握的代码是: $("#mainMenu").change(function(e){ e.preventDefault(); loadFirstManu(true); }); 重置按钮的代码: $("#btn_res
change
未发生
有谁能告诉我,在单击重置按钮和相同的元素后,如何触发dropdownlist的更改事件
到目前为止,我掌握的代码是:
$("#mainMenu").change(function(e){
e.preventDefault();
loadFirstManu(true);
});
重置按钮的代码:
$("#btn_reset").click(function() {
CKEDITOR.instances.ckeditor.setData('');
$('.mchosen').each(function() {
$(this).val('').trigger('liszt:updated');
$('#submenu').attr('disabled', 'disabled').html('');
$('#secondsubmenu').attr('disabled', 'disabled').html('');
$('#s-menu').removeClass('required').html('');
$('#secondsubmenu').removeClass('validate[required]');
$('#tabmenu').attr('disabled', 'disabled').html('');
$('#tab').removeClass('required').html('');
});
})) 我不知道这是否是您的情况,但您上面的代码应该可以工作
$("#mainMenu").change(function(e){
e.preventDefault();
loadFirstManu(true);
});
但是请注意,当您取消焦点选择输入时,大多数浏览器上都会发生“更改”事件
因此,当您单击“重置”时,在执行重置操作之前,会触发“更改”
现在,在更改选择后,尝试在选择输入外部单击,看看它是否仍然有效也许您应该尝试使用.on,因为您的$(“#主菜单”)可能在某个地方发生了更改(不能说没有示例)。尝试这样做:
$("body").on('change','#mainMenu',function(){
...
});
或者任何父选择器,而不是“重”体如果我没有错误地理解您,那么您希望在单击重置按钮后触发事件更改。 只需在代码中添加一行就可以做到这一点 //代码
$("#btn_reset").click(function(){
// your code here
$("#mainMenu").trigger('change');
//you can write this as per your requirements ie. at start or end.
});
这就是我想出来的:
$('#my-select').val(5).trigger("liszt:updated")
liszt:updated
不再适用于新版本的selected,请使用下面的答案
trigger("chosen:updated");
对于较新版本的Selected,事件为“Selected:Update”
如果我只需要刷新选中的值,选择-
。触发器('selected:updated')
就足够了。但是,如果我有更改处理程序并希望调用它-我需要执行.trigger('selected:updated').change()
事件发生在我单击reset按钮之前,之后我选择了我在单击reset之前选择的元素,因此不会发生任何事件。因为我不知道html/代码的结构,所以可以添加类似alert的内容(“triggered”);在.change()函数中,您使用该函数来了解单击“重置”后的错误确切位置,以及单击“重置”前的相同元素未发生事件,我还发出了警报(“Hello”)要检测事件是否发生或是否最终仍未发生,请尝试删除e.preventDefault。我认为它在selectThank中没有任何用处。这是1.0的新触发器名称约定,如中所述。这是我需要的。我将一个更改事件绑定到我选择的DDL和此。trigger('selected:updated')。change()
帮助我实现了调用更改功能
$(selector).trigger("chosen:updated")