javascript onchange不工作

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

我想在第一个输入框中的文本更改时调用UpdateEmission函数,在第二个输入框中的文本更改时调用UpdateEmissionPoints函数,但它在这里不起作用。 下面是我调用这两个函数的html代码片段

<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" >