簡體   English   中英

如何讓DOM知道動態創建的新元素?

[英]How do I let the DOM know about new elements created on the fly?

我正在撥打AJAX,並在后端構建一些HTML。 我將它們作為JSON返回,然后使用jQuery渲染它們,類似於:

$(data.message).each(function (index, value) {
    $('#states_table tbody').append('<td>' + value.edit_link + '</td>');
});

value.edit_link包含以下HTML:

<a id="edit_0" 
   title="Edit" 
   onclick="javascript:return false;" 
   class="edit"
>Edit</a>

然后,我將得到這樣的結果:

在此處輸入圖片說明

如您所見,鏈接沒有手形光標。 我的猜測是,第一次呈現頁面時DOM不了解它們,因此不會應用CSS屬性或默認屬性,這使我問:

為了使帶有cursor: hand的鏈接cursor: hand ,如何讓DOM知道這個新元素?

解決方案1

將html href="#"href="javascript:void(0)"添加到您的鏈接中,以便:

<a href="#"
   id="edit_0" 
   title="Edit" 
   onclick="javascript:return false;" 
   class="edit"
>Edit</a>

要全面了解<a> html標簽,請閱讀此內容

如果您不知道更好的方法href="#"href="javascript:void(0)" (沒人知道),請閱讀此討論

解決方案2

不要在情感之后使用<a>而是使用<button>

如果<a>按鈕沒有有意義的href,則為<button>

(對於某人, <form>之外的<button> <form>感覺不對。您決定。)

所以:

<button id="edit_0" 
   onclick="javascript:return false;" 
   class="edit"
>Edit</button>

按鈕參考那里

暫無
暫無

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

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