0
所以我有处理输入[type = checkbox]上的点击事件的这段代码片段。我想要实现的是手动设置checked
属性,具体取决于条件scope.vm.checkedRows.indexOf(orderId) === -1
(这里错误/真正的赋值被反转来表示),但它不起作用。在点击处理程序中手动检查复选框输入
link: function(scope, element) {
element.on('click', '.csv-ignore input', function(event) {
scope.$apply(function() {
var orderId = angular.element(event.target).closest('tr').data('order-id')
if (scope.vm.checkedRows.indexOf(orderId) === -1) {
scope.vm.checkedRows.push(orderId);
event.target.checked = false;
} else {
scope.vm.checkedRows.splice(scope.vm.checkedRows.indexOf(orderId), 1);
event.target.checked = true;
}
});
return false;
})
}
复选框未被选中/未选中。我觉得有趣的是,然后我发表评论return false
它工作正常。不过,我最初添加return false
以防止默认行为,并手动检查/取消选中复选框。你知道这段代码有什么问题吗?
event.preventDefault()?并删除返回false? – AthMav
尝试过,结果是相同的 – dragonfly
为什么不做相反的事情?如果它的错误或假如它真的离开它,则取消它 – AthMav