我的表单中有一个输入。触发器更改输入值以编程方式更改时的事件?
<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