Tom*_*Tom 3 javascript ajax jquery bind unbind
我试图只允许按一次按钮,然后通过ajax提交一些数据.我面临的问题是用户可以点击50x并且数据每次都提交POST?
jQuery("#id").unbind('click');
jQuery.ajax({
type: "POST",
url: ajax_url,
data: ajax_data,
cache: false,
success: function (html) {
location.reload(true);
}
});
Run Code Online (Sandbox Code Playgroud)
如果用户点击#ID
100x,我该如何确保数据只提交一次?然后重新启用#ID?
你可以.one()
在jQuery中使用该函数.
jQuery("#id").one('click', function()
{
jQuery.ajax({
type: "POST",
url: ajax_url,
data: ajax_data,
cache: false,
success: function (html) {
location.reload(true);
}
});
});
Run Code Online (Sandbox Code Playgroud)
请记住,这将完全删除click事件,即使您的ajax出错,您仍然无法再次单击它.
只需禁用按钮
$("#id").attr("disabled", "disabled")
Run Code Online (Sandbox Code Playgroud)
然后在成功函数中启用它
$("#id").removeAttr("disabled")
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8084 次 |
最近记录: |