Javascript onclick不会在第一次点击时更改div内容

时间:2014-04-02 22:36:14

标签: javascript jquery html ajax

我在尝试获取div以便在第一次点击时从另一个div获取内容时遇到了麻烦。

以下是我的一些代码:

<a href="#" onClick="goPage1();">Feed</a>

它正在调用的函数:

function goPage1(){
    $("#feed").html("");
    get_jsonp_feed();
    $("#content").html($("#feedHTML").html());
}

我想要完成的是清除'feed'div,然后调用ajax函数,该函数从数据库中检索一些数据并将其放入'feed'div。之后,'feed'div中的所有内容都被放入'content'div中。

如果我不首先清除div,它会在第二次点击后显示数据,但会不断添加“feed”div,其内容已经存在。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

你的ajax调用get_jsonp_feed();在设置html之前没有完成,ajax查询是异步的并且需要时间来执行。他们不等待在执行下一个命令之前完成。

您需要使用在返回ajax调用后发生的回调函数。

答案 1 :(得分:0)

很难说不知道get_jsonp_feed中的内容,但我想你的get_jsonp_feed在你试图访问数据时没有完成。

// adding the string callback=? to your query tells jQuery
// that it needs to be using JSONP
$.getJSON( "path/to/db.php?callback=?", function( data ) {
    $("#feed").html(data.your_json_members);
});
相关问题