Jquery中,改變一個元素的值,有時候需要觸發(fā)某些事件,比如圖片預覽、選中某個復選框、下拉框的值變化等等。這時就可以使用.trigger()方法。
//例如給一個按鈕綁定一個click事件 $(‘#button’).click(function(){ alert(‘按鈕被點擊’); }); //當我們改變一個文本框的值時,想要同時觸發(fā)按鈕的click事件 $(‘#text’).change(function(){ $(‘#button’).trigger(‘click’); });
這樣,當我們改變文本框的值時,就會彈出按鈕被點擊的提示框。
另外,還可以使用.triggerHandler()方法,這個方法只觸發(fā)被選元素的指定事件的第一個處理函數(shù),并且不會觸發(fā)瀏覽器默認行為。
//例如給一個a標簽綁定一個click事件和一個href屬性 $(‘#link’).click(function(){ alert(‘鏈接被點擊’); }).attr(‘href’, ‘https://www.baidu.com‘); //現(xiàn)在我們想讓這個鏈接自動跳轉(zhuǎn),但又不想觸發(fā)click事件并彈出alert框 $(‘#link’).triggerHandler(‘click’); window.location.href = $(‘#link’)[0].href;
這樣,我們就可以讓鏈接自動跳轉(zhuǎn)而不觸發(fā)click事件。