如果我尝试使用这段代码显示内容,我得到了预期的结果:
$("#checkbox_list").append($("<li/>", {id: "medias_bloc_"+id, html: table }) ); //a HTML a classical html table is appended
但是如果我尝试添加另一个包含一些html元素的js变量:
$("#checkbox_list").append($("<li/>", {id: "medias_bloc_"+id, html: table + input }) );
然后,只有输入html出现(一个基本的html输入)而不是表格我得到了这个:[object Object]
我该如何解决?
编辑:thx获取答案这是变量console.log的结果:
Object[table.add_table] //console.log(table)
<input name="cat" type="hidden" value=3105 />//console.log(input)
好的,所以有一个字符串和一个对象,我无法连接......
答案 0 :(得分:2)
您可以通过这种方式追加对象。使用.Append()
当您尝试在html
属性中的对象之间添加运算符时,它会连接它们的类型名称,即[object][object] [object][object]
$("#checkbox_list").append($("<li/>", {id: "medias_bloc_" + id}).append(table).append(input) );
答案 1 :(得分:1)
您没有提到table
和input
是什么。
如果table
和input
是jQuery对象,则不能简单地连接它们。对于字符串来说这将是一个很好的解决方案。
答案 2 :(得分:1)
由于无法与对象连接,您需要逐个追加(请参阅PSL的答案),或者获取每个对象的html并将其连接起来。
$("#checkbox_list").append($("<li/>", {id: "medias_bloc_"+id, html: $(table).html() + $(input).html() }) );
我会选择PSL的答案,一个接一个地添加。