javaScript可以处理来自ajax调用的任何新添加的DOM元素

时间:2014-05-07 16:47:15

标签: javascript jquery ajax

我不是javaScrit的专家,但我有以下问题。我有以下脚本: -

<script type="text/javascript">
        $(document).ready(function () {
            $("#DCSort").click(function () {

这表明以下内容: - 1.脚本将在文档完成加载时运行。 2.单击DCSort DOM元素时。

我的问题如下: - 假设在加载文档后,一个带有DCsort的新元素已经替换了旧的DCSort元素,当使用Ajax调用添加新添加的DCSort元素时,原始的javaScrip是否会触发,我使用点击它? 感谢

2 个答案:

答案 0 :(得分:2)

替换此 -

$("#DCSort").click(function () {

用这个 -

$("body")on('click', '#DCSort', function () {

这使用事件委派来说明最初呈现后添加到DOM的项目。

答案 1 :(得分:1)

在这种情况下,您需要 event delegation

  

事件委托允许我们将单个事件侦听器附加到父元素,该元素将为匹配选择器的所有后代触发,无论这些后代现在是存在还是将来添加。

$(document).on('click','#DCSort',function () {