2011-07-20 30 views
0

我有一個div來存放文章內容,並且可以使用ajax進行更改。使用JQuery html()時,它會在使用Ajax更改之前返回內容

我需要在這個div中的內容,我使用jquery函數html()來做到這一點,但它只能在更改之前獲取內容。

如何使用jquery獲得即時內容?

更新:

它在自己的網頁運行正常,問題就來了以「分享給Facebook的其他網站按鈕腳本。

這是一個示例腳本:

<script type="text/javascript" charset="utf-8"> 
(function(){ 
    var _w = 72 , _h = 16; 
    var param = { 
    url:'dachaocai.com/bench/2', 
    type:'3', 
    count:'1', 
    appkey:'', 
    title:$('#title').html()+'(Bench->'+$('#b_name').html()+')'+'http://www.dachaocai.com/bench/2', 
    pic:'', 
    ralateUid:'', 
    rnd:new Date().valueOf() 
    } 
    var temp = []; 
    for(var p in param){ 
    temp.push(p + '=' + encodeURIComponent(param[p] || '')) 
    } 
    document.write('<iframe allowTransparency="true" frameborder="0" scrolling="no" src="http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&') + '" width="'+ _w+'" height="'+_h+'"></iframe>') 
})() 
</script> 

我用html()來獲取文章標題共享,但它總是舊的。 有什麼辦法解決這個問題?

+0

你可能需要把'Ajax回調裏面.html'。你可以顯示一些代碼嗎? – pimvdb

+1

請發佈您的代碼 - 或更好的,建立一個小提琴:http://jsfiddle.net/ – BonyT

+0

這些答案有幫助嗎? – Steve

回答

0

您可以使用jQuery做一個異步調用到服務器,然後在回調可以追加一些HTML到一個div。我希望這有幫助。如果你發佈一些代碼,我可以更新答案。

編輯: 創建一個div把結果:

<div id='result'></div> 

var url = "http://hits.sinajs.cn/A1/weiboshare.html?' + temp.join('&'); 
$.get(url, function(data){ 
    $('#result').html(data); 
}); 

這樣你可以從服務器上的HTML而無需一個iframe的併發症。 然後你可以從DIV讀取數據

+0

我更新了我的問題中的代碼,請幫助我。 – LotusH

0
<div id="div"> 

</div> 

然後插入在這個div阿賈克斯成功回調裏面的新數據,然後嘗試這個 -

var htmlAfterChange = $('#div').html(); 
alert(htmlAfterChange); 
+0

我更新了我的問題中的代碼,請幫助我。 – LotusH

0

設置緩存:假

$.ajax({ 
    url: "test.html", 
    cache: false, 
    success: function(html){ 
    $("#results").append(html); 
    } 
}); 

http://api.jquery.com/jQuery.ajax/

+0

我更新了我的問題中的代碼,請幫助我。 – LotusH