首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法使用jquery插入html

无法使用jquery插入html
EN

Stack Overflow用户
提问于 2014-08-14 15:47:17
回答 3查看 208关注 0票数 1

我想创建这样的HTML

代码语言:javascript
运行
复制
<div id="positional">
   <div>
    <div>
       <label for='azimuth'>Azimuth</label>
    </div>
    <div>
       <input id='azimuth'>
    </div>
   </div>
</div>

我试着用这个,但我不能让它起作用,你能帮忙吗?

代码语言:javascript
运行
复制
$("<div><input id='azimuth'></div>")
.insertAfter("<div><label for='azimuth'>Azimuth</label></div>")
.wrap("<div></div>")
.appendTo("#positional");

假设已经创建了<div id="Positional">。谢谢,我把头发拔出来了。

编辑:我知道我可以将HTML插入到一个不可读的blob中,但我正在尝试一步一步地完成它,并理解问题所在。在这种情况下,包含标签的div将不会出现。

EDIT2:说真的,如果有人能解释一下为什么这不管用,我会非常感激的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-08-14 18:41:45

$.wrap$.after$.appendTo在内存节点中不起作用。请参阅JQuery: Build HTML in 'memory' rather than DOM

在调用这些方法http://jsfiddle.net/j824yyng/2/之前,将起始节点放入DOM

代码语言:javascript
运行
复制
$("<div><label for='azimuth'>Azimuth</label></div>")
.appendTo("#positional")
.wrap("<div></div>")
.after("<div><input id='azimuth'></div>");

正如其他人指出的那样,这不是很容易读懂。在jQuery中这可能是一个很好的教训,但是如果我不得不修改上面的代码而不是直接的前向版本,我会讨厌你的。

票数 1
EN

Stack Overflow用户

发布于 2014-08-14 15:51:13

除非这个故事比你提到的要多,否则这应该没问题。

代码语言:javascript
运行
复制
var myHtml = '<div>'
    + '<div>'
    + '   <label for="azimuth">Azimuth</label>'
    + '</div>'
    + '<div>'
    + '   <input id="azimuth">'
    + '</div>'
    + '</div>';

$('#positional').html(myHtml);
票数 5
EN

Stack Overflow用户

发布于 2014-08-14 15:52:29

代码语言:javascript
运行
复制
$('#positional').html('<div><div><label for="azimuth">Azimuth</label></div><div><input id="azimuth"></div></div>');
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25312261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档