Javascript 如何在$(';body';)中添加这些HTML标记。追加脚本?

Javascript 如何在$(';body';)中添加这些HTML标记。追加脚本?,javascript,jquery,html,css,xml,Javascript,Jquery,Html,Css,Xml,Javascript开发人员 我有一个脚本,在模板中动态显示html: $(document).ready(function() { var credits= $('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft"></div><div id="wrapright">Designed Templatezy</div></

Javascript开发人员

我有一个脚本,在模板中动态显示html:

$(document).ready(function() {
    var credits= $('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft"></div><div id="wrapright">Designed Templatezy</div></div></div>');
});
$(文档).ready(函数(){
var credits=$('body').append('Designed Templatezy');
});
现在我想将
添加到wrapleft div中,但它不能显示博客标题,也不能添加站点的url

提示:这是一个
,其中as
是一个标签,显示您的博客标题,如“堆栈溢出”。添加模板很容易,但我发现将其添加到追加脚本时很难

我尝试了下面的方法,但没有成功:

$(document).ready(function() {
    var credits= $('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft"><a expr:href='data:blog.homepageUrl'><data:blog.title/>™</a></div><div id="wrapright">Designed Templatezy</div></div></div>');
});
$(文档).ready(函数(){
var credits=$('body').append('Designed Templatezy');
});
因此,请任何人帮助我在append脚本中的wrapleft div之后添加这个
。谢谢


更新:我可以在脚本中添加常规链接:如a href stackoverflow.com

$(document).ready(function() {
    var credits= $('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft"><a href="stackoverflow.com">stackoverflow</a></div><div id="wrapright">Designed Templatezy</div></div></div>');
});
$(文档).ready(函数(){
var credits=$('body').append('Designed Templatezy');
});

而这项工作,但如何添加
在脚本中工作,它很简单,添加模板和显示标题的网站标题,但如何添加该脚本内追加后,左包装。我添加了它,但它是纯文本。

因为您使用的是模板语言,所以可能会在输出到达浏览器之前处理模板语言。如果不是,如果在到达浏览器后以某种方式对其进行了处理,那么jQuery可能试图从.html()中删除不需要的代码,而可能无法识别标记。如果您想让某些东西稍微干燥一点,也可以使用.text()

但是,以最纯粹的形式回答您的问题(通过jQuery)

在第二个示例中,您将所有内容包装在一个div标记中,但这可以通过使用.wrap()完成。。。您应该做的是使用选择器来定位所需的页面段。另外,请注意你写的是“包裹内部”而不是“包裹内部”

让我们回到你的原始版本。您希望在页面底部附加一个链接。在doc ready函数中:

$('body').append("somehtml"); // append to body
但是,为了保持正常,您应该创建一个“target”div来填充。例如:

HTML(正文):

请看这个JSFIDLE,它演示了这两个方面。

这显示了.html()和.append之间的区别,以及.html()有效追加的方法:

更新

要使用其他方法包含另一个答案,基本上您可以从跳转中显示它并用CSS隐藏它,或者用jQuery隐藏它:

$('#mylink').hide();
如果您想使href成为动态的——在模板解析器呈现代码之前填充它——或者如果包含基于AJAX请求的内容,或者只是以某种方式通过javascript事件,您可以在事后使用DOM解析对其进行更改

// Simple:
$("#mylinkid").attr('href', 'http://www.live.com/');

//Complicated: 
$("a[href^='http://stackoverflow.com']").each(function() {
 this.href = this.href.replace(/^http:\/\/beta\.stackoverflow\.com/, 
 http://stackoverflow.com");
});
(借用自#179713)

一个可能的解决方案:

您可以在模板中添加
,如下所示:

<div id="blogHomepageUrlLink" style="display: none;">
    <a expr:href='data:blog.homepageUrl'><data:blog.title/>™</a>
</div>
或组合:

$('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft">'+$("#wrapleft").html($("#blogHomepageUrlLink").html())+'</div><div id="wrapright">Designed Templatezy</div></div></div>');
$('body').append('+$(“#wrapleft”).html($(“#bloghomepageurlink”).html())+'Designed Templatezy');

您试图将服务器端模板代码与javascript代码混合使用。它们在不同的时间以不同的方式运行environments@charlietfl我没有混合使用侧模板代码,我认为它是一个xml代码。在blogger中使用temlpateBut,但他们在服务器上的编译器会将其编译成正确的html。我怀疑它会在你的范围内做到这一点script@charlietfl因此,没有办法在leftwrapper之后添加到该append中…任何解决方案都可以这样做…如果我直接在我的模板中添加它,它会起作用,但在该Wrappet内部append之后添加它时它不起作用…如何做任何解决方案。您应该添加具有正确href值的有效html,标题等。我可能是错的…多年来没有接触过任何与blogger有关的内容,我怀疑这里的很多人是否接触过。Herb wrapp inner不是问题所在…它是div的名称…我可以向html添加任何链接,让我更新一个示例,我可以添加链接等…但不是我共享的两个表达式,…如何在wrapleft div之后添加。谢谢。检查更新。我可以添加任何链接,但是如何添加这两个表达式,当我添加它时,它是纯文本。不起作用。@ishaq Council Welp,这是因为纯文本是在模板解析后通过的。请参阅上面的添加内容。您的方法很好,并且使之成为可能,但在这里,添加$(“#wrapleft”).html($(“#bloghomepageurlink”).html()时,我们仍然会遇到错误;对身体来说…它不起作用..但是你的想法很好..你能再试一点吗?为什么它不起作用..或者,你可以给#blogHomepageUrlLink Id分配另一个链接,这样我们就可以在fiddle中看到它的结果…请在fiddle中给我看…那么不管它是否工作都会很好。你是否在模板文件中添加了第一段代码?是的,我添加了这段代码,然后添加了最后的组合代码…但我告诉你在fiddle中执行。给Id提供任何静态urlBloghompuler。像Starckoverflow现在用fiddle做这些事情,这样我们就可以看到它是否工作了…如果它在fiddle中工作,那么我希望问题会得到解决…像这样:但它不工作,如果你让它工作。我不工作,我用静态url访问该id进行检查。
<div id="blogHomepageUrlLink" style="display: none;">
    <a expr:href='data:blog.homepageUrl'><data:blog.title/>™</a>
</div>
$('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft"></div><div id="wrapright">Designed Templatezy</div></div></div>');
$("#wrapleft").html($("#blogHomepageUrlLink").html());
$('body').append('<div id="wrap"><div id="wrapp-inner"><div id="wrapleft">'+$("#wrapleft").html($("#blogHomepageUrlLink").html())+'</div><div id="wrapright">Designed Templatezy</div></div></div>');