Javascript AJAX调用成功后,无法更新td数据
感谢您阅读本文。我面临一个jquery问题。在成功调用AJAX之后,我想更新页面上的一个元素。然而,它并没有被更新 我在做什么?我在点击span时打开一个文本框,然后添加文本,在聚焦事件中,我正在进行Ajax调用,但无法将新文本更新到相同的span,请帮助我 这是我的js代码Javascript AJAX调用成功后,无法更新td数据,javascript,jquery,Javascript,Jquery,感谢您阅读本文。我面临一个jquery问题。在成功调用AJAX之后,我想更新页面上的一个元素。然而,它并没有被更新 我在做什么?我在点击span时打开一个文本框,然后添加文本,在聚焦事件中,我正在进行Ajax调用,但无法将新文本更新到相同的span,请帮助我 这是我的js代码 $(document).on('click', '.td-edit', (function (e0) { var thisObj = $(this); var olddata = thisObj.html(
$(document).on('click', '.td-edit', (function (e0) {
var thisObj = $(this);
var olddata = thisObj.html();
var newDom = '<input type="text" value="' + olddata + '" class="new-value" style="border:#bbb 1px solid;padding-left:5px;width:75%;"/ >';
thisObj.parent('td').html(newDom);
}));
$(document).on('focusout', '.new-value', (function (e1) {
var thisObj = $(this);
var type = thisObj.parent('td').attr('class');
var newData = thisObj.val();
var santanceId = thisObj.parent('td').parent('tr').attr('id');
santanceId = parseInt(santanceId.replace('tr', ''));
thisObj.parent('td').html('\'<img src="uploads/loading.gif">\'');
if (type === 'sentnc') {
$.ajax({
type: "POST",
url: "operations.php",
data: {
santanceId: santanceId,
sentnc: newData
},
success: function () {
var newDom = '<span class="td-edit">' + newData + '</span>';
thisObj.parent('td').html(newDom);
}
});
}
}));
$(文档).on('click','.td edit',(函数(e0){
var thisObj=$(本);
var olddata=thisObj.html();
var newDom='';
thisObj.parent('td').html(newDom);
}));
$(文档).on('focusout','new value',(函数(e1){
var thisObj=$(本);
var type=thisObj.parent('td').attr('class');
var newData=thisObj.val();
var santanceId=thisObj.parent('td').parent('tr').attr('id');
santanceId=parseInt(santanceId.replace('tr','');
thisObj.parent('td').html('\'\'');
如果(类型=='sentnc'){
$.ajax({
类型:“POST”,
url:“operations.php”,
数据:{
santanceId:santanceId,
新数据
},
成功:函数(){
var newDom=''+newData+'';
thisObj.parent('td').html(newDom);
}
});
}
}));
HTML:
句子
代表
拉娜在工作
p1.ref=I,p1.name=julie
猜测Rep1:p1.ref=I,p1.has=name1,p1.name.made\u from=rana
猜测Rep2:p1.ref=I,p1.name=rana
您的
成功处理程序应该是:
success: function (data) {
var newDom = '<span class="td-edit">' + data + '</span>';
thisObj.parent('td').html(newDom);
}
成功:函数(数据){
var newDom=''+数据+'';
thisObj.parent('td').html(newDom);
}
这里,数据
是服务器在ajax调用后返回的数据newdata是我在文本框中输入的数据,thisObj找不到parentwhere is。新值
?这是什么呢?提供一些html,这样我就可以帮助您避免使用ajax调用的结果。如果这是你的意图,我不知道你为什么要打ajax电话。如果您打算使用ajax调用的结果,然后您需要向success
处理程序声明一个参数,并使用该参数访问ajax调用的结果。@jfriend00是的,我没有使用ajax响应数据,我进行ajax调用只是为了将内容更新到我的数据库中我单击rana正在工作,然后打开文本框,然后再次单击focusout事件我进行ajax调用在此之后,我无法更新父tdjQuery,它太棒了!
success: function (data) {
var newDom = '<span class="td-edit">' + data + '</span>';
thisObj.parent('td').html(newDom);
}