Jquery Ajax beforeSend函数没有';好像不行
我有一个表单,可以将一个小文本文件发送到服务器,在那里它的数据通过PHP进行处理。结果显示在颜色框中。它工作正常,但我想在上传和处理用户数据时向用户显示一条小消息(需要几秒钟),并在显示结果后再次隐藏。但由于某种原因,该消息Jquery Ajax beforeSend函数没有';好像不行,jquery,ajax,Jquery,Ajax,我有一个表单,可以将一个小文本文件发送到服务器,在那里它的数据通过PHP进行处理。结果显示在颜色框中。它工作正常,但我想在上传和处理用户数据时向用户显示一条小消息(需要几秒钟),并在显示结果后再次隐藏。但由于某种原因,该消息(span#ajaxloading)没有出现 HTML: 修复它!正在处理您的数据。。。 jQuery: jQuery("#fixit").click(function() { if(form.valid() == true ) { var form
(span#ajaxloading)
没有出现
HTML:
修复它!正在处理您的数据。。。
jQuery:
jQuery("#fixit").click(function() {
if(form.valid() == true ) {
var formData = new FormData(jQuery('#ajastaja')[0]);
jQuery.ajax({
beforeSend: function(){
jQuery('#ajaxloading').show(); // <- Not working!
},
url: '/path/to/my.php',
type: 'POST',
data: formData,
async: false,
success: function (data) {
jQuery('#ajaxloading').hide(); // <- Works here
jQuery('#answerbox').html(data);
},
cache: false,
contentType: false,
processData: false
});
jQuery.colorbox({
inline:true,
href:'#answerbox',
width:'500px',
closeButton:false
});
return false;
}
});
jQuery(“#fixit”)。单击(函数(){
if(form.valid()==true){
var formData=new formData(jQuery('#ajastaja')[0]);
jQuery.ajax({
beforeSend:function(){
jQuery(“#ajaxloading”).show();//如果beforeSend函数不起作用,请尝试以这种方式调用click函数
Jquery:
jQuery("#fixit").click(function () {
jQuery('#ajaxloading').show();
if (form.valid() == true) {
var formData = new FormData(jQuery('#ajastaja')[0]);
jQuery.ajax({
url: '/path/to/my.php',
type: 'POST',
data: formData,
async: false,
success: function (data) {
jQuery('#ajaxloading').hide(); // <- Works here
jQuery('#answerbox').html(data);
},
error:function(data)
{
jQuery('#ajaxloading').hide();
},
cache: false,
contentType: false,
processData: false
});
jQuery.colorbox({
inline: true,
href: '#answerbox',
width: '500px',
closeButton: false
});
return false;
}
else {
jQuery('#ajaxloading').hide();
}
});
jQuery(“#fixit”)。单击(函数(){
jQuery('#ajaxloading').show();
if(form.valid()==true){
var formData=new formData(jQuery('#ajastaja')[0]);
jQuery.ajax({
url:“/path/to/my.php”,
键入:“POST”,
数据:formData,
async:false,
成功:功能(数据){
jQuery(“#ajaxloading”).hide();//我发现您的代码很好,代码段中没有定义表单,但beforeSend在这里工作:
像其他答案一样,我必须将其包装在一个文档中。准备好了吗,但这可能已经在您的代码片段之外完成了
var formData = new FormData(jQuery('#ajastaja')[0]);
jQuery.ajax({
beforeSend: function(){
console.log('beforeSend')
jQuery('#ajaxloading').show(); // <- Not working!
},
url: '/path/to/my.php',
type: 'POST',
data: formData,
async: false,
success: function (data) {
jQuery('#ajaxloading').hide(); // <- Works here
jQuery('#answerbox').html(data);
},
cache: false,
contentType: false,
processData: false
});
var formData=new formData(jQuery('#ajastaja')[0]);
jQuery.ajax({
beforeSend:function(){
console.log('beforeSend')
jQuery(“#ajaxloading”).show();//尝试包装您的单击函数:
$(document).ready(function() {
$("#fixit").click(function() {
...
});
});
尝试删除以下行
async: false,
dode您是否错过了结尾处的冒号(您的函数})将此更改为});@Yaseen dode在jquery
中不需要使用分号,它是可选的,不是强制性的。@Yaseen不需要使用冒号“;”直到它被压缩。如果show();
不工作如何.hide()
正在工作?您是如何检查的?您能尝试使用$.ajax而不是jquery.ajax吗?很抱歉,它实际上已经包装好了。我编辑了我的文章。是的,很抱歉。我编辑了我的文章。虽然此代码可以回答问题,但提供了有关此代码回答问题的原因和/或方式的其他上下文on提高了它的长期价值。
async: false,