我有一个表单,用户输入6个数字,在提交表单时收集并存储为变量。然后我使用AJAX显示加载屏幕。我想知道如何使用AJAX beforeSend函数显示在加载屏幕上输入的数字?
$(function() {
$(".submit").click(function() {
var num1 = $("#num1").val();
var num2 = $("#num2").val();
var num3 = $("#num3").val();
var num4 = $("#num4").val();
var num5 = $("#num5").val();
var num6 = $("#num6").val();
var dataString = 'num1=' + num1 + '&num2=' + num2 + '&num3=' + num3 + '&num4=' + num4 + '&num5=' + num5 + '&num6=' + num6;
if (num1 == '' || num2 == '') {
$('.error').fadeOut(200).show();
} else {
$.ajax({
type : "POST",
url : "index.php",
data : dataString,
data : jQuery('#numbers_form').serializeArray(),
beforeSend : function() {
$('#loader').css('display', 'block');
$('#loader').css('margin', 'auto');
},
success : function(res) {
$('#success').css('display', 'block');
}
});
}
});
});
答案 0 :(得分:0)
更改
else {
$.ajax({
到
else {
$('body').append(num1+' '+num2+' '+num3+' '+num4+' '+num5+' '+num6);
$.ajax({
应该这样做。
如果绝对必须使用beforeSend
,那么将其设为
$.ajax({
type : "POST",
url : "index.php",
data : dataString,
beforeSend : function() {
$('#loader').css('display', 'block');
$('#loader').css('margin', 'auto');
$('body').append(num1+' '+num2+' '+num3+' '+num4+' '+num5+' '+num6);
},
success : function(res) {
$('#success').css('display', 'block');
}
});
您可以将'body'
选择器更改为任何其他元素,将append
功能更改为text()
或html()
。
注意:您已经分配了两次数据。如果输入只有6个数字,那就不必要了。