我有一个带有输入列的表行,我想得到一个td的值(id),由于某种原因,我必须通过在单击td时调用一个函数来完成它
HTML CODE:
<tr ng-repeat="fr in nonConfirmedFactureRetour">
<td>
//storing id in the data-item Attr.
<input id="pending_item_name" data-item="{{fr.id}}" value="{{fr.facture_item_name}}" type="text"/>
</td>
<td>
<input id="pending_cls_crt" value="{{fr.fcls_crt}}" type="text"/>
</td>
<td>
<input id="pending_piece" value="{{fr.fpiece}}" type="text"/>
</td>
<td>
<input id="pending_dateCom" value="{{fr.dateCom}}" type="text"/>
</td>
<td>
<input id="pending_dateRec" value="{{fr.dateRec}}" type="text"/>
</td>
<td>
// calling function to hget the id
<input ng-click="confirmEntity_retour();" type="button" value="Confirm"/>
</td>
</tr>
JS代码:
$scope.confirmEntity_retour=function(){
var item_nameId=$("#rfi").attr("data-itid");
alert(item_nameId); //alert the id when calling this function
}
使用JQuery从DOM获取数据是违反AngularJS的范例的。您应该使用数据绑定。您可以将项目的ID作为参数传递给confirmEntity_retour
函数。
HTML模板:
<input ng-click="confirmEntity_retour(fr.id);" type="button" value="Confirm"/>
控制器:
$scope.confirmEntity_retour = function(id) {
alert(id);
}
尝试将整个项目作为参数传递给函数。
$scope.confirmEntity_retour=function(item){
alert(item.id)
}
<input ng-click="confirmEntity_retour(fr);" type="button" value="Confirm"/>