Jquery中,改变一个元素的值,有时候需要触发某些事件,比如图片预览、选中某个复选框、下拉框的值变化等等。这时就可以使用.trigger()方法。

//例如给一个按钮绑定一个click事件$(‘#button’).click(function(){alert(‘按钮被点击’);});//当我们改变一个文本框的值时,想要同时触发按钮的click事件$(‘#text’).change(function(){$(‘#button’).trigger(‘click’);});

这样,当我们改变文本框的值时,就会弹出按钮被点击的提示框。

另外,还可以使用.triggerHandler()方法,这个方法只触发被选元素的指定事件的第一个处理函数,并且不会触发浏览器默认行为。

//例如给一个a标签绑定一个click事件和一个href属性$(‘#link’).click(function(){alert(‘链接被点击’);}).attr(‘href’, ‘https://www.baidu.com‘);//现在我们想让这个链接自动跳转,但又不想触发click事件并弹出alert框$(‘#link’).triggerHandler(‘click’);window.location.href = $(‘#link’)[0].href;

这样,我们就可以让链接自动跳转而不触发click事件。

jquery里改变值触发事件