选中该复选框后,我希望检查<p>
标签中变量的值,以便在我的AngularJS中使用它。
HTML
<input type="checkbox" value="{{o.orderID}}" ng-change="stateChanged()"/>
<p id="orderID" ng-model="orderID">{{o.orderID}}</p>
角
$scope.stateChanged = function () {
var value1 = $scope.orderID;
alert(value1);
}
但这似乎不起作用。如何快速轻松地完成这项工作?
答案 0 :(得分:2)
假设您的HTML包含在控制器中,并且您的JS代码在该控制器函数的定义中;像这样改变你的方法:
$scope.stateChanged = function () {
var value1 = $scope.o.orderID;
alert(value1);
}
答案 1 :(得分:0)
您只能在输入字段上使用ng-model
。如果您想获取<p>{{o.orderID}}</p>
的内容,可以调用$ scope.o.orderID。
如果要查询DOM元素的某些内容,可以使用angular jQlite
答案 2 :(得分:0)
让我们看看,我认为你想要做的是这样的事情:
<input type="checkbox" ng-model="o.orderID" ng-change="stateChanged()"/>
<p id="orderID">{{o.orderID}}</p>
此外,我不明白你为什么要将orderID绑定到一个复选框...这将是一个布尔值,无论是真还是假。如果我们正在谈论订单ID 不应该是文本框吗?
答案 3 :(得分:0)
您需要在scope
div中设置ng-repeat
父$parent.selectedOrder
中的变量,因为ng-repeat会在渲染DOM时创建新范围
<div ng-repeat="o in orders">
<input type="checkbox" value="{{o.orderID}}" ng-change="stateChanged()"
ng-click="$parent.selectedOrder = o.orderID"/>
</div>
<p id="orderID">{{selectedOrder}}</p>