0
我正在整合一個實時聊天功能,我正嘗試使用一個JQuery語句來獲取聊天會話ID,這個聊天會話ID是一個直到聊天開始才創建的div ID。 (它被動態添加到頁面中。)當然,從邏輯上講,我確保在聊天開始並且存在之前,我不會嘗試選擇該元素。下面是相關的HTML結構和我使用的代碼行:JQuery .children()不返回動態添加的元素?
HTML:
<!--These do not exist until a chat is started-->
<div class="customer_inner_widget">
<div id="chat-session-5748220" style="height:100%;">
JQuery的:
$(".customer_inner_widget").children().first().attr("id").split("-")[2]
最奇怪的是,在正常情況下無論是當我在關閉聊天時在腳本中運行它時,或者我在Google Chrome開發人員工具控制檯中運行它後,聊天開始後,它不起作用:
Output:
Uncaught TypeError: Cannot read property 'split' of undefined
at <anonymous>:1:58
...但如果我只是右邊的聊天窗口上點擊我的頁面上,選擇「檢查」,然後運行相同的代碼行控制檯...它的工作原理:
Output:
"5748220"
如何檢查HTML會導致Chrome瀏覽器突然啓動...?我如何在腳本中執行這個隱藏的魔法?
你的ID沒有關閉雙引號,在該上下文中使用的jQuery並不在意何時創建該元素 –
我的壞,HTML是正確的我只是在這裏手動輸入,因爲我無法弄清楚如何複製只有一行鉻 – Reddy
很難知道當你運行你的jQuery代碼,並且你沒有提供這個代碼正在運行的任何上下文。如果你可以創建一個小例子來說明你的問題(我知道,它可能很難,但你可以硬編碼一些東西),這將非常有用,以獲得非常好的迴應。 – ProgrammerV5