我不是javaScrit的专家,但我有以下问题。我有以下脚本: -
<script type="text/javascript">
$(document).ready(function () {
$("#DCSort").click(function () {
这表明以下内容: - 1.脚本将在文档完成加载时运行。 2.单击DCSort DOM元素时。
我的问题如下: - 假设在加载文档后,一个带有DCsort的新元素已经替换了旧的DCSort元素,当使用Ajax调用添加新添加的DCSort元素时,原始的javaScrip是否会触发,我使用点击它? 感谢
答案 0 :(得分:2)
替换此 -
$("#DCSort").click(function () {
用这个 -
$("body")on('click', '#DCSort', function () {
这使用事件委派来说明最初呈现后添加到DOM的项目。
答案 1 :(得分:1)
在这种情况下,您需要 event delegation :
事件委托允许我们将单个事件侦听器附加到父元素,该元素将为匹配选择器的所有后代触发,无论这些后代现在是存在还是将来添加。
$(document).on('click','#DCSort',function () {