我需要能够以编程方式设置一个复选框,以便在事件发生时取消选中(该事件实际上是一个隐藏的模态)。我需要保持当前ng-change
函数具有相同的参数。
我有一个复选框元素:
<input type="checkbox" ng-change="change(ordered, $index, {{part.id}}, {{part.vehicle_id}}, '{{part.ordered_from}}')" ng-true-value="1" ng-false-value="0" ng-model="ordered" name="part-ordered" />
我的JS:
$scope.change = function(value, part_index, id, vehicle_id, ordered_from_val) {
if (modal_hidden_event) {
// UNCHECK CODE.
}
}
我不太确定要搜索的内容或文档的哪些区域会对我有所帮助。
答案 0 :(得分:1)
我不确定modal_hidden_event来自哪里,我假设它只是一个占位符。我还在HTML中清理了您的更改功能,因为它不需要进行插值,因为值不存在:
使用ng-checked:
<强> HTML 强>
<input type="checkbox"
ng-change="change(ordered, $index, part.id, part.vehicle_id, part.ordered_from)"
ng-true-value="1"
ng-false-value="0"
ng-model="ordered"
ng-checked="checkedStatus"
name="part-ordered" />
<强> JS 强>
$scope.checkedStatus = true;
$scope.change = function(value, part_index, id, vehicle_id, ordered_from_val) {
if (modal_hidden_event) {
$scope.checkedStatus = false;
}
}
我还建议只将部分传递给函数,然后你可以抓住每个属性:
<强> HTML 强>
"change(ordered, $index, part)"
$ scope.change = function(value,part_index,part){
<强> JS 强>
$scope.change = function(value, part_index, part) {
var part_id = part.id,
vehicle_id = part.vehicle_id,
ordered_from_val = part.ordered_from;
if (modal_hidden_event) {
$scope.checkedStatus = false;
}
}