我希望这是足以识别问题的代码 - 我一直在试图解决这个问题。它是Chrome扩展程序弹出窗口部分的Javascript。
$('#save').click(function() {
var baseURL = 'http://example.com/endpoint?';
baseURL += 'a=' + encodeURIComponent($('#a').val());
baseURL += '&b=' + encodeURIComponent($('#b').val());
baseURL += '&c=' + encodeURIComponent($('#c').val());
baseURL += '&d=' + encodeURIComponent($('#d').val());
if ($('input#private').is(':checked')) {
baseURL += '&private=true';
}
$('#form').css('display', 'none');
$('#loader').fadeIn(500, function() {
$('#popup-load').load(baseURL, function() {
window.close();
});
});
});
我已经检查过,按钮(#save
)没有被点击两次(添加alert
调试代码),可能是服务器端有错误吗?
答案 0 :(得分:0)
我有类似的问题。我通过创建一个全局标志解决了它,并在第一次运行时使其无效。每次通话都会检查此项。很脏,但做了这个工作。
<script type="text/javascript">
var firstRun = true;
$('#element').load(function() {
if (firstRun) {
firstRun = false;
// Rest of your code
}
}
</script>