微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 提交的Ajax复选框,阻止点击发布/提交

嗨,我正在 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] 举报,一经查实,本站将立刻删除。

相关推荐