繁体   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