Tôi đã xem xét và không có bài đăng tương tự nào khác đã giúp tôi. Tôi đã tạo một biểu mẫu dựa trên AJAx
trong Yii 2
và jQuery
và có vẻ như nó gửi biểu mẫu hai lần.Biểu mẫu Ajax gửi hai lần với Yii 2
hình thức của tôi:
$form = ActiveForm::begin([
'id' => 'company_form',
'ajaxDataType' => 'json',
'ajaxParam' => 'ajax',
'enableClientValidation' => false
]);
mã JS của tôi:
$(document).ready(function() {
/* Processes the company signup request */
$('#company_form').submit(function() {
signup('company');
return false;
});
})
function signup(type) {
var url;
// Set file to get results from..
switch (type) {
case 'company':
url = '/site/company-signup';
break;
case 'client':
url = '/site/client-signup';
break;
}
// Set parameters
var dataObject = $('#company_form').serialize();
// Run request
getAjaxData(url, dataObject, 'POST', 'json')
.done(function(response) {
//.........
})
.fail(function() {
//.....
});
// End
}
nên không chuẩn submit được ngừng lại bởi tôi đặt return: false;
trong mã javascript?
Tại sao lại gửi hai lần?
Thông tin khác: Tuy nhiên, điều kỳ lạ là, điều đó chỉ xuất hiện lần đầu tiên; nếu tôi nhấn gửi lại, nó chỉ gửi một lần; nhưng nếu tôi tải lại trang và nhấn gửi, nó sẽ thực hiện lại hai lần.
Liệu nó gửi yêu cầu ajax hai lần trong firebug? –
@AliMasudianPour Có, khi tôi xem bảng điều khiển, yêu cầu được gửi hai lần. Tuy nhiên, điều kỳ lạ là, điều đó chỉ xuất hiện lần đầu tiên; nếu tôi nhấn gửi lại, nó chỉ gửi một lần; nhưng nếu tôi tải lại trang và nhấn gửi, nó sẽ thực hiện lại hai lần. – Brett