我知道已经有一些类似我的问题,但我无法解决他们的问题。
我在外部html文件中获取此代码以将其包含在其他文件中:
<div class="header">
<h1 class="replace-me">I'am a placeholder</h1>
</div>
&#34;文件&#34;上面包含在这个&#34;文件&#34;:
中<h2 style="display: none" class="variable">Hey, I'm a variable</h2>
第二个代码中的变量应该替换第一个代码中h1标记的内容。我知道这不是一个获得免费代码的论坛,我只想要一些灵感或建议。谢谢伙计们!
答案 0 :(得分:1)
如果您可以控制外部文件,我建议您重写内容,以便外部文件提供某种类型的json对象,并从那里处理您的数据。
否则,使用JQuery从变量中获取html内容并使用该值替换'replace-me'的html内容是一件简单的事。
答案 1 :(得分:1)
你可以用另一个元素的html替换一个元素的html,如下所示:
$(".replace-me").html($(".variable").html());
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="header">
<h1 class="replace-me">I'am a placeholder</h1>
</div>
<h2 style="display: none" class="variable">Hey, I'm a variable</h2>
&#13;
然而,正如Rama Schneider指出的那样,您可能希望以与html不同的方式获取您的内容。
另请注意,此jQuery解决方案是在客户端完成的。如果您在提供初始HTML时已经知道了内容,那么您希望在服务器端执行此操作。
答案 2 :(得分:0)
如果可以的话,你应该在服务器端解决这个问题。使公共模板成为一个函数,如下所示:
function getHeader($content) { ?>
<div class="header">
<h1 class="replace-me"><?php echo $content; ?></h1>
</div> <?php
}
在致电$content
之前计算function
并将其传递给function
。如果您无法将其设为function
并且您从第三方来源获得此信息,则可以通过Javascript执行此操作,如下所示:
<script type="text/javascript">
document.getElementsByClassName("header")[0].getElementsByClassName("replace-me")[0].innerHTML = "<?php echo $content; ?>";
</script>
确保在加载标头标记后添加此script
。