javascript onchange不工作
我想在第一个输入框中的文本更改时调用UpdateEmission函数,在第二个输入框中的文本更改时调用UpdateEmissionPoints函数,但它在这里不起作用。 下面是我调用这两个函数的html代码片段javascript onchange不工作,javascript,jquery,html,angularjs,Javascript,Jquery,Html,Angularjs,我想在第一个输入框中的文本更改时调用UpdateEmission函数,在第二个输入框中的文本更改时调用UpdateEmissionPoints函数,但它在这里不起作用。 下面是我调用这两个函数的html代码片段 <input id="mission-{{mission.id}}" onchange="updatemission(mission.id, mission.missioninfo)" type="text" ng-model="mission.missionInfo" class
<input id="mission-{{mission.id}}" onchange="updatemission(mission.id, mission.missioninfo)" type="text" ng-model="mission.missionInfo" class="form-control" >
<input id="point-{{missioncontent.id}}" type="text" ng-model="missioncontent.info" class="form-control">
$scope.updatemission = function(missionid, info){
alert("changed");
};
$scope.updatemissionpoints = function(missionpointid, info){
};
我希望在文本框中完成所有编辑时调用这些函数。我使用的是angular js,因此使用angular js或jquery的解决方案将非常有用。使用ng blur-angular
<input id="mission-{{mission.id}}" ng-blur="updatemission(mission.id, mission.missioninfo)" type="text" ng-model="mission.missionInfo" class="form-control" >
<input id="point-{{missioncontent.id}}" type="text" ng-model="missioncontent.info" class="form-control" ng-blur="updatemissionpoints(missioncontent.id, missioncontent.info) ">
尝试使用JavaScript的onblur
这样,当对象失去焦点时,脚本将运行我认为最好的方法是在这里使用指令
ng change
将>在用户更改输入时计算给定表达式
onchange
超出角度范围(onchange是javascript更改事件,它与角度无关),因此它不会调用传递给onchange
事件的范围属性。但是ng change
将执行您传递的scope属性
<input id="mission-{{mission.id}}" ng-change="updatemission(mission.id, mission.missioninfo)" type="text" ng-model="mission.missionInfo" class="form-control" >
下面是关于它的阅读:但是ng change调用函数,即使一个字母被更改,我想在所有编辑id完成后调用它,当用户输入完成并且鼠标离开文本框时,可以使用ng blur。这就是为什么我选择使用onchange,当焦点从文本框Welcome中移除时,它调用函数。接受答案,因为它解决了问题。
<input id="mission-{{mission.id}}" ng-change="updatemission(mission.id, mission.missioninfo)" type="text" ng-model="mission.missionInfo" class="form-control" >