我正在尝试通过点击按钮加载一些 JavaScript 代码。问题是有些代码只是显示而不是执行。
这是我正在尝试加载的文件 reload.tpl:
<div class="online-players">
{% for player in players_online %}
<div class="online-player-heads">
<a href="?page=player&name={{ player.getName }}">
{{ player.getPlayerHead(64, 'img-polaroid', true)|raw }}
</a>
</div>
{% else %}
<div class='force-center'><em>{{ 'no_players_online'|trans }}</em></div>
{% endfor %}
</div>
我用它来加载代码:
<script>
$(document).ready(function() {
$('#button2').click(function() {
$('.online-players').fadeOut('slow', function() {
$(this).load('templates/default/views/reload.tpl', function() {
$(this).fadeIn("slow");
});
});
});
});
</script>
预期:
实际发生的情况:
有人知道为什么要这样做吗?当我不尝试加载脚本时,它工作得很好。但当我尝试 .load 时,它就显示不正确.. 帮助? :)
最佳答案
如果您没有自己发现,这就是您需要做的:
将 jquery 加载的目标页面更改为 php 文件(以便正确的服务器端句柄):
<script>
$(document).ready(function() {
$('#button2').click(function() {
$('.online-players').fadeOut('slow', function() {
$(this).load('reload.php', function() {
$(this).fadeIn("slow");
});
});
});
});
</script>
内部reload.php文件:
require_once("./libs/Smarty.class.php");
$smarty = new Smarty;
$smarty->display("templates/default/views/reload.tpl");
希望这对您有帮助。 问候,
关于javascript - 使用Javascript加载.tpl显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17128716/