Jquery 使用Ajax更改按钮值不起作用
我想把span的文本改为processing。。。当用户单击时 这是我已经尝试过的Jquery 使用Ajax更改按钮值不起作用,jquery,ajax,button,Jquery,Ajax,Button,我想把span的文本改为processing。。。当用户单击时 这是我已经尝试过的 $("#ibSave").text('Please wait...'); //$("#ibSave").prop('disabled', true); $.ajax({ type: "POST", url: "../Messgaes.asmx/InsertMembers", contentType: "
$("#ibSave").text('Please wait...');
//$("#ibSave").prop('disabled', true);
$.ajax({
type: "POST",
url: "../Messgaes.asmx/InsertMembers",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
timeout: 900000,
data: JSON.stringify(Postdata),
success: function (result) {
$('#csvimporthint').html("<div class='success'>" + result.d + " members successfully uploaded.</div>")
$("#ibSave").text('Upload');
//$('#ctl00_ContentPlaceHolder1_ibSave').prop('disabled', false);
console.log(new Date() - dates);
},
error: function (result) {
console.log(result.responseText);
}
});
注意:如果我在浏览器中打开控制台,则按钮的值将更改
我不知道我做错了什么相同的代码控制台窗口/检查窗口打开工作正常
你能指导我如何做到这一点吗
更新:
这是我的全部代码
$("#ibSave").click(function () {
if ($('.green').length > 0) {
var json = [];
$('.green').each(function () {
var firstname = '';
var lastName = '';
var email = '';
var balance = '';
var password = '';
var obj = {},
$td = $(this).find('td'),
firstname = $td.eq(0).text(),
lastName = $td.eq(1).text(),
email = $td.eq(2).text(),
balance = $td.eq(3).text();
password = $td.eq(4).text();
obj.FirstName = firstname;
obj.LastName = lastName;
obj.Email = email;
obj.Balance = balance;
obj.Password = password;
json.push(obj);
});
//console.log(json);
var Postdata = {
members: json
};
var dates = new Date();
$("#ibSave").html('Please wait...');
//$("#ibSave").prop('disabled', true);
$.ajax({
type: "POST",
url: "../Messgaes.asmx/InsertMembers",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
timeout: 900000,
data: JSON.stringify(Postdata),
success: function (result) {
$('#csvimporthint').html("<div class='success'>" + result.d + " members successfully uploaded.</div>")
$("#ibSave").html('Upload');
//$('#ctl00_ContentPlaceHolder1_ibSave').prop('disabled', false);
console.log(new Date() - dates);
},
error: function (result) {
console.log(result.responseText);
}
});
return false;
} else {
alert("Sorry! you don't have enough valid rows to upload");
return false;
}
});
$(“#ibSave”)。单击(函数(){
如果($('.green')。长度>0){
var json=[];
$('.green')。每个(函数(){
var firstname='';
var lastName='';
var电子邮件=“”;
var余额=“”;
var密码=“”;
var obj={},
$td=$(this.find('td'),
firstname=$td.eq(0.text(),
lastName=$td.eq(1.text(),
email=$td.eq(2).text(),
余额=$td.eq(3.text();
密码=$td.eq(4.text();
obj.FirstName=FirstName;
obj.LastName=LastName;
obj.Email=电子邮件;
对象平衡=平衡;
obj.Password=密码;
json.push(obj);
});
//log(json);
var Postdata={
成员:json
};
变量日期=新日期();
$(“#ibSave”).html('请稍候…');
//$(“#ibSave”).prop('disabled',true);
$.ajax({
类型:“POST”,
url:“../Messgaes.asmx/InsertMembers”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
async:false,
超时:900000,
数据:JSON.stringify(Postdata),
成功:功能(结果){
$('#csvimporthint').html(“+result.d+”成员已成功上载。”)
$(“#ibSave”).html('Upload');
//$('ctl00'u ContentPlaceHolder1'u ibSave').prop('disabled',false);
console.log(新日期()-日期);
},
错误:函数(结果){
console.log(result.responseText);
}
});
返回false;
}否则{
警报(“抱歉!您没有足够的有效行进行上载”);
返回false;
}
});
很抱歉打扰您,但我必须回答自己的问题,以备将来参考
我只是有残疾
async: false,
我把它改成了
async: true,
现在它完美地改变了价值观
var interval;
$this = $(this);
//$("#ibSave").prop('disabled', true);
$.ajax({
type: "POST",
url: "../Messgaes.asmx/InsertMembers",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
beforeSend: function () {
$this.val('Uploading');
interval = window.setInterval(function () {
var text = $this.val();
if ($this.val().length < 13) {
$this.val($this.val() + '.');
} else {
$this.val('Uploading');
}
}, 200);
},
timeout: 900000,
data: JSON.stringify(Postdata),
success: function (result) {
$('#csvimporthint').html("<div class='success'>"+result.d+" members successfully uploaded.</div>")
$this.val("Upload");
$this.prop('disabled', false);
//$('#ctl00_ContentPlaceHolder1_ibSave').prop('disabled', false);
$this.val('Calculating.....');
$this.val('Done!');
$this.val('Upload');
window.clearInterval(interval);
},
error: function (result) {
console.log(result.responseText);
}
});
var区间;
$this=$(this);
//$(“#ibSave”).prop('disabled',true);
$.ajax({
类型:“POST”,
url:“../Messgaes.asmx/InsertMembers”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
async:true,
beforeSend:函数(){
$this.val('Uploading');
interval=window.setInterval(函数(){
var text=$this.val();
如果($this.val().length<13){
$this.val($this.val()+');
}否则{
$this.val('Uploading');
}
}, 200);
},
超时:900000,
数据:JSON.stringify(Postdata),
成功:功能(结果){
$('#csvimporthint').html(“+result.d+”成员已成功上载。”)
$this.val(“上传”);
$this.prop('disabled',false);
//$('ctl00'u ContentPlaceHolder1'u ibSave').prop('disabled',false);
$this.val('计算…');
$this.val('Done!');
$this.val('Upload');
窗口。清除间隔(间隔);
},
错误:函数(结果){
console.log(result.responseText);
}
});
这是我的全部代码
$("#ibSave").click(function () {
if ($('.green').length > 0) {
var json = [];
$('.green').each(function () {
var firstname = '';
var lastName = '';
var email = '';
var balance = '';
var password = '';
var obj = {},
$td = $(this).find('td'),
firstname = $td.eq(0).text(),
lastName = $td.eq(1).text(),
email = $td.eq(2).text(),
balance = $td.eq(3).text();
password = $td.eq(4).text();
obj.FirstName = firstname;
obj.LastName = lastName;
obj.Email = email;
obj.Balance = balance;
obj.Password = password;
json.push(obj);
});
//console.log(json);
var Postdata = {
members: json
};
var dates = new Date();
$("#ibSave").html('Please wait...');
//$("#ibSave").prop('disabled', true);
$.ajax({
type: "POST",
url: "../Messgaes.asmx/InsertMembers",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
timeout: 900000,
data: JSON.stringify(Postdata),
success: function (result) {
$('#csvimporthint').html("<div class='success'>" + result.d + " members successfully uploaded.</div>")
$("#ibSave").html('Upload');
//$('#ctl00_ContentPlaceHolder1_ibSave').prop('disabled', false);
console.log(new Date() - dates);
},
error: function (result) {
console.log(result.responseText);
}
});
return false;
} else {
alert("Sorry! you don't have enough valid rows to upload");
return false;
}
});
特别感谢是a还是?你能不能也分享一些你的问题的html代码use.html()然后代替text()@RohitBatra尝试过但不起作用当我尝试用简单的按钮点击它就起作用了。您是如何触发ajax的?@RohitBatra on按钮单击默认情况下,所有请求都是异步发送的(即默认情况下设置为true)。如果需要同步请求,请将此选项设置为false。请注意,同步请求可能会暂时锁定浏览器,从而在请求处于活动状态时禁用任何操作@劳尔蒙格这正是我出错的地方,但我不知道浏览器会在
sync
操作期间阻止我的操作
var interval;
$this = $(this);
//$("#ibSave").prop('disabled', true);
$.ajax({
type: "POST",
url: "../Messgaes.asmx/InsertMembers",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
beforeSend: function () {
$this.val('Uploading');
interval = window.setInterval(function () {
var text = $this.val();
if ($this.val().length < 13) {
$this.val($this.val() + '.');
} else {
$this.val('Uploading');
}
}, 200);
},
timeout: 900000,
data: JSON.stringify(Postdata),
success: function (result) {
$('#csvimporthint').html("<div class='success'>"+result.d+" members successfully uploaded.</div>")
$this.val("Upload");
$this.prop('disabled', false);
//$('#ctl00_ContentPlaceHolder1_ibSave').prop('disabled', false);
$this.val('Calculating.....');
$this.val('Done!');
$this.val('Upload');
window.clearInterval(interval);
},
error: function (result) {
console.log(result.responseText);
}
});