嗨,我正在
jquery中使用ajax函数来保存复选框的值.这是我的问题,如果用户多次点击甚至保存尚未完成/成功怎么办?我如何在表单提交时阻止用户勾选复选框?谢谢 !
继承我的代码片段:
$(".chkOverride").click(function (e) { var userId = $("#UserId").val(); var isChecked = $(this).is(":checked") $.ajax({ url: "/Worker/Worker?Id=" + Id + "&isChecked=" + isChecked + "&UserId=" + UserId,type: "post",success: function (result) { alert("Success!"); location.reload(); },error: function () { } }); });
解决方法
您可以在启动ajax调用之前禁用该复选框.您可以使用prop()方法来执行此操作.将disabled属性值设置为true
$(".chkOverride").click(function (e) { var _this=$(this); _this.prop('disabled',true); var userId = $("#UserId").val(); var isChecked = $(this).is(":checked") $.ajax({ url: "/Worker/Worker?Id=" + Id + "&isChecked=" + isChecked + "&UserId=" + UserId,success: function (result) { alert("Success!"); //No point in enabling as you are going to reload the page _this.prop('disabled',false); location.reload(); },error: function () { alert("Error :("); _this.prop('disabled',false); } }); });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。