Jquery 如何获取div的文本?
我正在使用AJAX填充具有display-none的div的内容。守则如下:Jquery 如何获取div的文本?,jquery,ajax,mouseover,Jquery,Ajax,Mouseover,我正在使用AJAX填充具有display-none的div的内容。守则如下: $(".event").mouseover(function () { var id = $(this).attr("id"); $(".hidden-div").html(""); $.post("get-festival-desc.php", { festid: id }, function (data) { $(".hidden-div").ht
$(".event").mouseover(function () {
var id = $(this).attr("id");
$(".hidden-div").html("");
$.post("get-festival-desc.php", {
festid: id
}, function (data) {
$(".hidden-div").html(data);
});
var fest_title = $(".hidden-div").text();
alert(fest_title);
});
它运行良好(通过检查元素进行检查),“隐藏div”确实获得了所需的数据。然而,我也想提醒“隐藏div”的文本,但这似乎没有发生
这是因为display设置为none或AJAX还是我做错了什么?我认为这应该可以:
var fest_title = $(".hidden-div").html();
这就是异步回调的问题。试试这个:
$(".event").mouseover(function(){
var id = $(this).attr("id");
$(".hidden-div").html("");
$.post("get-festival-desc.php", {festid: id}, function(data){
$(".hidden-div").html(data);
var fest_title = $(".hidden-div").text();
alert(fest_title);
});
});
基本上,jquery不会等到
$.post()
的值返回后才执行其余的代码。因此,您必须提醒回调中的文本,而不是它的外部。提示:它与异步行为有关(似乎合乎逻辑:)将尝试签出!