我正在使用document.createElement()创建一个元素。 现在我如何将它传递给只接受Jquery对象的函数?
$("#id")
我无法使用它,因为该元素尚未在页面中呈现。
答案 0 :(得分:407)
var elm = document.createElement("div");
var jelm = $(elm);//convert to jQuery Element
var htmlElm = jelm[0];//convert to HTML Element
答案 1 :(得分:16)
使用jQuery构建元素怎么样? e.g。
$("<div></div>")
创建一个新的div元素,准备添加到页面中。可以进一步缩短到
$("<div>")
然后您可以链接您需要的命令,设置事件处理程序并将其附加到DOM。例如
$('<div id="myid">Div Content</div>')
.bind('click', function(e) { /* event handler here */ })
.appendTo('#myOtherDiv');
答案 2 :(得分:1)
到目前为止,我已经做出了最好的解决方案:
function convertHtmlToJQueryObject(html){
var htmlDOMObject = new DOMParser().parseFromString(html, "text/html");
return $(htmlDOMObject.documentElement);
}