Php jQuery:在Ajax调用后更改元素值
在使用jQuery.ajax之后,我试图更改span的值 JavaScript HTMLPhp jQuery:在Ajax调用后更改元素值,php,jquery,Php,Jquery,在使用jQuery.ajax之后,我试图更改span的值 JavaScript HTML 德瓦什里·辛格 当我点击a.miclickks时,它应该完成Ajax调用并返回一个值,该值也应该放在按钮锚定的范围内。然而,一切都没有改变 我不知道您的整个代码是什么样子的,但是您应该能够修改它来执行您正在尝试的操作: $('#id').on('click', function() { var that = this; $.ajax({ url: 'wherever.
德瓦什里·辛格
当我点击a.miclickks
时,它应该完成Ajax调用并返回一个值,该值也应该放在按钮锚定的范围内。然而,一切都没有改变
我不知道您的整个代码是什么样子的,但是您应该能够修改它来执行您正在尝试的操作:
$('#id').on('click', function() {
var that = this;
$.ajax({
url: 'wherever.php',
success: function(html) {
$(that).find("li span.mi-val").html(html);
}
});
看起来你有两个问题。首先,正如上面@Barmar所说,mi val是micclickks的孩子,而不是父母。第二个是ajax complete函数是异步的,所以$(this)不是您所期望的。但这两个问题都是可以解决的 您的代码有点凌乱,html缺少正确的属性,但我想这大概就是您想要的:
$('.kssico').on('click', function(event) {
var for_uid = $(this).parents("li").attr('data'); //the li element in your html doesn't have a data attribute
var for_name = $(this).parents("li").attr('unme'); //the li element in your html doesn't have a 'unme' attribute
var dataString = "for_uid=" + for_uid + "&for_name=" + for_name;
$.ajax({
type: "POST",
context: this,
url: "include/ajax.php",
data: dataString,
success: function (html) {
if(html=="300")
{
$('#myModal .modal-body p').html("Error Please Try Again.");
$('#myModal').modal('show');
}
else
{
$(this).parents("li span.mi-val").html(html);
$('#myModal .modal-body p').html("The Requested Action Has Been Notified To Your Friend.");
$('#myModal').modal('show');
}
}
});
});
您需要更改的范围是什么?请发布相关jQuery的其余部分,特别是AJAX部分。另外,您是否尝试过使用devlooper工具进行调试以查看发生了什么?出现错误和AJAX数据?我想将span html更改为此“`
mi val
的AJAX调用返回值是micclickks
的子项,而不是父项。$(this).find(“span.mi val”).html(html)代码>。它可能不起作用,因为我在您的帖子中提到的原因-您的html元素没有正确的属性。建立一个jsfiddle,这样我们至少都可以看到您使用的是什么。
$('#id').on('click', function() {
var that = this;
$.ajax({
url: 'wherever.php',
success: function(html) {
$(that).find("li span.mi-val").html(html);
}
});
$('.kssico').on('click', function(event) {
var for_uid = $(this).parents("li").attr('data'); //the li element in your html doesn't have a data attribute
var for_name = $(this).parents("li").attr('unme'); //the li element in your html doesn't have a 'unme' attribute
var dataString = "for_uid=" + for_uid + "&for_name=" + for_name;
$.ajax({
type: "POST",
context: this,
url: "include/ajax.php",
data: dataString,
success: function (html) {
if(html=="300")
{
$('#myModal .modal-body p').html("Error Please Try Again.");
$('#myModal').modal('show');
}
else
{
$(this).parents("li span.mi-val").html(html);
$('#myModal .modal-body p').html("The Requested Action Has Been Notified To Your Friend.");
$('#myModal').modal('show');
}
}
});
});