Javascript 我希望平均/100根据用户输入的印地语/100或英语/100进行更改

Javascript 我希望平均/100根据用户输入的印地语/100或英语/100进行更改,javascript,angularjs,Javascript,Angularjs,所以目前平均值是在HTML代码中计算的。 如果用户输入发生更改,则平均值将中断。我该怎么做才能使每个人的平均更新 控制器 HTML 这是我希望更改平均值的代码: <table> <th>NAME</th> <th>AGE</th> <th>GENDER</th> <th>ENGLISH/100</th>

所以目前平均值是在HTML代码中计算的。 如果用户输入发生更改,则平均值将中断。我该怎么做才能使每个人的平均更新

控制器

HTML 这是我希望更改平均值的代码:

 <table>    
        <th>NAME</th>
        <th>AGE</th>
        <th>GENDER</th>
        <th>ENGLISH/100</th>
        <th>HINDI/100</th>
        <th>AVERAGE/100</th>

    <tr ng-repeat ="x in names | orderBy:sortColumn">
        <td>{{x.name}}</td>
        <td>{{x.age}}</td>
        <td>{{x.gender}}</td>
        <td><input type="text" ng-model="x.English"></td>
        <td><input type="text" ng-model="x.Hindi"></td>
        <td ng-bind="avg=(x.English+x.Hindi)/2">{{avg}}</td>
        <td>
            <button><a href="" ng-click="delete(x)" style="text-decoration:none;">Delete</a></button>
        </td>
    </tr>
</table>

名称
年龄
性别
英语/100
印地语/100
平均每100
{{x.name}
{x.age}
{{x.gender}
{{avg}}

x.English
x.Hindi
将作为字符串值输入,因此需要对它们进行解析

<td ng-bind="avg=(parseFloat(x.English)+parseFloat(x.Hindi))/2">{{avg}}</td>
作为一种变通方法,您还可以使用乘法进行解析

<td ng-bind="avg=(x.English*1+x.Hindi*1)/2">{{avg}}</td>
{{avg}

您不能在角度表达式中使用
parseInt()
函数,您需要创建一个方法来计算
avg

从视图调用方法,如:

<td>{{avg(x.English, x.Hindi)}}</td>

看这个

给了我NaN,你认为还有什么需要修改的吗?
<td ng-bind="avg=(x.English*1+x.Hindi*1)/2">{{avg}}</td>
<td>{{avg(x.English, x.Hindi)}}</td>
$scope.avg = function(e, h){
  if(!h) h=0;
  if(!e) e=0;
  return ( parseInt(h)+parseInt(e))/2;

}