当我尝试追加元素时,为什么JQuery将[object Object]写入DOM?

时间:2016-01-27 19:00:38

标签: javascript jquery

简化,这就是我所拥有的:

JobServer

它附加了这个:

if (value instanceof jQuery && target instanceof jQuery) {
   target.append(value);
}

我也尝试将值转换为html:

[object Object]

结果相同。

我也试过设置目标的HTML,而不是附加元素:

if (value instanceof jQuery && target instanceof jQuery) {
   target.append(value.html());
}

同样的结果。

有人能指出我正确的方向吗?

在调试器中检查时,

if (value instanceof jQuery && target instanceof jQuery) { target.html(value.html()); } 是这样的:

value

Z.fn.init[1] 0: span.jc-template-formatted-currency context: span.jc-template-formatted-currency length: 1 prevObject: Z.fn.init[1] __proto__: Z[0] 是由另一个我不会包含在这里的大班级创建的,但这里是基础知识:

target

(protos是DOM中的模板存储)。

因此$(document.getElementById('protos').querySelector('.jc-template-formatted-currency')).clone().find(targetSelector); 在追加target时实际上并不在DOM中。首先将value推送到一个数组,然后将其附加到一个容器(target)中,其中包含各种其他元素。

0 个答案:

没有答案