html
<input id="checkbox" name="claimcheckbox" type="checkbox" data-bind="checked: IsclaimcheckboxSubscribe,visible: Authorization.IsclaimcheckboxAuthorized" />
Java脚本
IsclaimcheckboxSubscribe = ko.observable();
IsclaimcheckboxSubscribe.subscribe(function (newvalue) {
claimcheckboxSelection(newvalue);
});
function claimcheckboxSelection(newvalue) {
if (newvalue) {
if (claimcheckboxConfirmation()) {
//Do something
} else {
do other thing
}
} else {}
function claimcheckboxConfirmation() {
var claimcheckboxvalue = confirm("Do you want to process?");
//if yes
if (claimcheckboxvalue) {
return true;
} else {
//if no
return false;
}
}
现在问题在于消息确认
您想要处理吗?
有YES和NO按钮,当我点击YES然后我想取消选中该复选框。我试过了 IsclaimcheckboxSubscribe(假); 但它不起作用。
请注意,我没有使用jquery。所以我想通过使用敲除js来选中复选框。 请有人帮忙!
答案 0 :(得分:2)
这里似乎有几个问题。
}
我能够通过创建模型并在该模型上应用敲除绑定来实现它。
var model = (function (){
var self = {};
self.IsclaimcheckboxSubscribe = ko.observable();
self.IsclaimcheckboxSubscribe.subscribe(function (newvalue) {
claimcheckboxSelection(newvalue);
});
return self;
})();
ko.applyBindings(model);
然后在claimcheckboxselection方法中,我可以使用model.IsclaimcheckboxSubscribe(false)
function claimcheckboxSelection(newvalue) {
if (newvalue) {
if (claimcheckboxConfirmation()) {
// Do Something
} else {
model.IsclaimcheckboxSubscribe(false);
}
} else {}
}
工作jsfiddle:http://jsfiddle.net/infiniteloops/JfXQv/