Insertafter()JQuery

时间:2015-03-26 08:10:20

标签: jquery

我正试图在JQuery的帮助下将JavaScript对象插入到这样的HTML元素中:

var selectList = document.createElement("select");
//added some properties ..

//trying insert after a specific HTML tag
    var selectedListValue=$(selectList) ;
    $( "<tr><td>"+selectedListValue+"</td></tr>" ).insertAfter("#EFAForm_Klein div table tbody tr:last-child()");

如果我只插入&#34; selectList&#34;:

我会得到这样的东西
"object HTMLSelectElement" 

或者,如果我使用&#34; $(selectList)&#34;:

"[object Object]"

我是否需要将我的JS-Object转换为JQuery?

Ty的帮助。

2 个答案:

答案 0 :(得分:0)

问题是selectedListValue是一个jQuery对象,当在字符串连接中使用时会导致[object Object]。同样,selectList是一个HTMLElement对象,其toString()返回object HTMLSelectElement

您需要做的是附加tr然后在其中找到td并将selectList附加到其中

$("<tr><td></td></tr>").insertAfter("#EFAForm_Klein div table tbody tr:last-child").find('td').append(selectList);

答案 1 :(得分:0)

你应该省略()

.insertAfter("#EFAForm_Klein div table tbody tr:last");

或更好的一个:

$("#EFAForm_Klein tr").filter(':last')
                                      .after('<tr><td></td></tr>').find('td')
                                      .append(selectedListValue);