【问题标题】:Append is not a function jquery追加不是一个函数jquery
【发布时间】:2016-11-14 21:22:01
【问题描述】:

在下面的代码中,我希望能够将test_div 附加到被点击的元素上。但是,我收到TypeError:e.srcElement.appendis not a function 的错误消息。

$(document).ready(function() {

    onclick = function (e) {
        var test_div = document.createElement("div");
        target = e.srcElement
        target.append(test_div);
        }

    $('#dialogue').on('click', onclick);

});

我尝试打印出e.srcElement 的类型,但它只显示object,这不是很有帮助。将元素附加到单击的项目的正确方法是什么?

【问题讨论】:

    标签: javascript jquery append


    【解决方案1】:

    .append() 是 jquery 方法。您需要将 DOM 对象转换为 jquery 对象才能使用 jquery 方法:

     $(target).append(test_div);
    

    【讨论】:

      【解决方案2】:

      或者,您可以使用的 javascript 方法是 appendChild()

      target.appendChild(test_div);

      【讨论】:

        【解决方案3】:

        您需要为此使用 jQuery。此外,您正在混合使用原生 JavaScript 和 jQuery。另一种方法是:

        $(document).ready(function() {
        
          $('#dialogue').on('click', function (e) {
            var test_div = $("<div />");
            $(this).append(test_div);
          });
        
        });
        

        【讨论】:

          【解决方案4】:

          e.srcElement 是一个 DOM 节点。将另一个元素附加到其中的正确方法是appendChild

          .append 是等效的 JQuery 方法。

          Here 是文档


          “我尝试打印出e.srcElement 的类型,但它只显示object

          console.log() 你的调试信息。

          【讨论】:

            猜你喜欢
            • 2019-07-26
            • 1970-01-01
            • 2018-02-01
            • 2013-04-25
            • 1970-01-01
            • 2011-09-02
            • 1970-01-01
            • 2020-03-29
            • 2014-11-01
            相关资源
            最近更新 更多