在 jQuery 中访问新生成的内容
Access new generated content in jQuery
在我发现的所有研究中,他们使用 .on() 调用将 even 绑定到元素,但这不是我需要的。这是一个简短的例子:
<div id="myElement">
<ul id="myUl">
<li>content list 1</li>
<li>content list 2</li>
</ul>
</div>
在 ajax 调用之后,我使用以下方法替换了 myElement 的内容:
var div = $("#myElement");
div.replaceWith('<div id="myElement">
<ul id="myUl">
<li>new content list 1</li>
<li>new content list 2</li>
</ul>
</div>');
现在,如果我想访问无序列表以添加例如 class 名称:div.find("ul").addClass("myClass");
它不起作用。知道如何解决这个问题吗?
这对我有用...
- 添加了 # 以获取使用 ID
的元素
- 替换后再次使用ID
- 转义了换行符
- 已更改班级名称
请注意,您必须在 Ajax
成功时进行替换
var div = $("#myElement");
div.replaceWith('<div id="myElement">\
<ul id="myUl">\
<li>new content list 1</li>\
<li>new content list 2</li>\
</ul>\
</div>');
$("#myElement").find("ul").addClass("myClass");
console.log($("#myElement").html())
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="myElement">
<ul id="myUl">
<li>content list 1</li>
<li>content list 2</li>
</ul>
</div>
在我发现的所有研究中,他们使用 .on() 调用将 even 绑定到元素,但这不是我需要的。这是一个简短的例子:
<div id="myElement">
<ul id="myUl">
<li>content list 1</li>
<li>content list 2</li>
</ul>
</div>
在 ajax 调用之后,我使用以下方法替换了 myElement 的内容:
var div = $("#myElement");
div.replaceWith('<div id="myElement">
<ul id="myUl">
<li>new content list 1</li>
<li>new content list 2</li>
</ul>
</div>');
现在,如果我想访问无序列表以添加例如 class 名称:div.find("ul").addClass("myClass");
它不起作用。知道如何解决这个问题吗?
这对我有用...
- 添加了 # 以获取使用 ID 的元素
- 替换后再次使用ID
- 转义了换行符
- 已更改班级名称
请注意,您必须在 Ajax
成功时进行替换var div = $("#myElement");
div.replaceWith('<div id="myElement">\
<ul id="myUl">\
<li>new content list 1</li>\
<li>new content list 2</li>\
</ul>\
</div>');
$("#myElement").find("ul").addClass("myClass");
console.log($("#myElement").html())
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="myElement">
<ul id="myUl">
<li>content list 1</li>
<li>content list 2</li>
</ul>
</div>