2011-06-29 51 views
1

我打電話jQuery的AJAX調用後,jQuery的呼叫成功

$.ajax({ 
    type: "post", 
    url: formLink, 
    cache: false, 
    data: ......, 
    success : function(responseHTML) { 
     $(".abc").html(responseHTML); 
    } 
}); 

現在,在 「名爲.abc」,可以說,

<html> 
.............. 
</html> 
<script> 
alert("11"); //Not getting this alert 
</script> 

即使

$(document).ready(function() { 
alert("11"); 
}); 

不能嘗試即使成功後也能獲得警報,請幫助

Th預先安排

+0

'responseHTML'包含什麼? – Dogbert

+0

瀏覽器應該如何知道您使用的是什麼類型的腳本而不指定它的'text/javascript'?空腳本標記不會說太多... – MoarCodePlz

+0

不僅如此,但如果你放棄$(document).ready(function(){// dosomething});進入頁面後,文檔已經加載,那麼文檔就緒事件將如何觸發? – MoarCodePlz

回答

0

doctype是否HTML5的不是,那麼你就需要在腳本標籤

哦類型屬性..我希望你是不是在響應返回<html>標籤 - 只返回HTML的一小部分,你需要。

,如果你能 - 與能夠在成功的呼叫進行分析,並從那裏

初始化您JS功能也刪除$(文件)。就緒此事件發生在很久你的Ajax調用之前返回的屬性吧,當你刷新頁面

+0

我有這個,對不起忘了在上面的例子中提到 – Max

+0

是的你是對的我正在使用JSP,但我的問題是加載頁面後,我需要調用一個函數的參數。所以我不能在腳本本身之後調用函數:成功。 – Max

+0

在成功的ajax調用集$(「。abc」)。html(responseHTML);然後解析你得到的html,從它得到你需要的數據並調用你的JS函數,如果需要函數來格式化html,那麼就把它放在一個隱藏的div中(或者抵消它),然後在完成之後顯示它 –

0

嘗試向您的ajax params添加dataType:「html」。

+0

感謝您的回覆,嘗試過。沒有運氣 – Max

0

的部分將不會再發生嘗試更換

<script> 
    alert("11"); //Not getting this alert 
</script> 

隨着

<script type="text/javascript"> 
    (function() { 
     alert('11'); 
    })(); 
</script> 
+0

嘗試哥們,沒有運氣 – Max

+0

一個問題,如果我的響應對象包含完整的html內容,並在內容中,如果我有任何功能打電話,我可以稱之爲 – Max

+0

我不想重複別人說的,但你不應該返回整個< h t m l >標記。只要將您打算插入的內容返回到具有「abc」類的任何內容即可。 –

0

不是100%肯定它會工作,但值得給它一個鏡頭:

你可以嘗試在函數返回你的JavaScript代碼,一旦「名爲.abc」 HTML已經看到,打電話給你的回報函數名。