我的表單中有一個輸入。觸發器更改輸入值以編程方式更改時的事件?
<input type="text" id="changeProgramatic" onchange="return ChangeValue(this);"/>
如果我在本框使用另一個JavaScript函數(changeProgramatic)更改值也不會觸發這種改變事件(注:我傳遞「這個」入法)。
我的表單中有一個輸入。觸發器更改輸入值以編程方式更改時的事件?
<input type="text" id="changeProgramatic" onchange="return ChangeValue(this);"/>
如果我在本框使用另一個JavaScript函數(changeProgramatic)更改值也不會觸發這種改變事件(注:我傳遞「這個」入法)。
您使用jQuery的,對不對?將HTML與JavaScript分開。可以使用trigger或triggerHandler。
var $myInput = $('#changeProgramatic').on('change', ChangeValue);
var anotherFunction = function() {
$myInput.val('Another value');
$myInput.trigger('change');
};
呼叫編程方式改變之後的文字處理程序本身應該工作:
var input = document.getElementById("changeProgramatic");
input.value = 'New Value';
input.onchange();
對我來說,這只是射擊輸入模糊 – 2014-09-27 20:49:15
這樣的作品,但如何通過事件屬性 - >(e)? – KhaledMohamedP 2015-11-22 09:24:01
只有當你設置'onchange'函數(在JS或HTML中)時纔有效。不會觸發哪些可以被接收用'addEventListener()'。 – Nux 2016-03-18 12:22:25
你找出解決辦法,也許這將幫助:
在您的文本框,我需要使用jQuery的綁定功能。所以當你觸發時,它會起作用。 我有類似的問題,我直接綁定事件,之後,我觸發該事件,bups,它不會工作。所以我改變使用綁定(「命名事件」,函數(){}綁定方法..它的工作就像我想
如何使用jQuery選擇器獲取此事件? – 2013-04-27 10:07:53
我在問這個 '$(document).bind('mycustomevent',function(e,arg1,arg2,arg3){/ * ... * /});' – 2013-04-27 10:11:28