簡體   English   中英

使用jQuery在$ .load()之后不在DOM中?

[英]Not in DOM after $.load() with jQuery?

var id = 'test';
var dom = $('#loader').clone().load("Views/chatBox.html");
dom.find('span.bn').text(id);

在chatBox.html中,有:

...
<span class="bn">AAA</span>
...

我想用“test”替換“AAA”,但是失敗了(dom.find無法獲取它),這意味着它無法立即獲得。

怎么做正確的方法?

如果您打算使用返回的元素,則應該在回調函數上執行此操作,這是因為HTML的檢索是異步完成的,並且在請求結束並且元素被注入DOM時執行回調函數:

var id = 'test';
$('#loader').load("Views/chatBox.html", function () {
  $('span.bn', this).text(id);
});

另請注意,在您的示例中,您正在克隆 #loader元素,並且克隆元素尚未在DOM中,您必須插入它,但我不確定您是否真的想要克隆該元素。 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM