Javascript 触发重复的js事件信号
我的模板中有以下html代码:Javascript 触发重复的js事件信号,javascript,sqlite,Javascript,Sqlite,我的模板中有以下html代码: <div id="my_choices"> <form> <input type="radio" name="status" value="fast"> <input type="radio" name="status" value="slow"> </form> </div> 当选择单选按钮时,我经常注意到,在chrome debugger的
<div id="my_choices">
<form>
<input type="radio" name="status" value="fast">
<input type="radio" name="status" value="slow">
</form>
</div>
当选择单选按钮时,我经常注意到,在chrome debugger的网络选项卡中,请求被发送了两次。我并不总是这样,有时只是发出一个信号。由于数据库锁定错误,第二个请求总是引发500个内部服务器错误。我使用Sqlite3
我修复重复js信号的努力:
-我假设问题可能来自重复的连续单击,所以我禁用了触发器上的输入,然后在处理完成时重新启用它们。没什么,变了
-我假设问题可能与ajax请求有关,所以我使请求同步。当然,它阻止了第二个事件,调用第二个事件时没有错误。但是,第二个信号仍在发送,从用户的角度来看,阻塞体验非常糟糕。当您单击单选按钮时,两个按钮会发生变化。请您如何演示,@CL。?。如何避免这种影响?
$(document).on('change', '#my_choices form input[type=radio]', function(){
var my_form = $(this).closest('form').get(0);
$(my_form).ajaxSubmit({
type: 'post',
url: '/my/url/',
})
});