javascript - 使用Javascript加载.tpl显示错误

标签 javascript jquery smarty

我正在尝试通过点击按钮加载一些 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>

预期:

/image/CRMGn.png

实际发生的情况:

/image/8UvG7.png

有人知道为什么要这样做吗?当我不尝试加载脚本时,它工作得很好。但当我尝试 .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/

相关文章:

javascript - React 使用 switch 语句有条件地显示图像不起作用

Javascript:事件监听器中未定义 event.target.id

javascript - knockout 实时搜索

c# - 如何在C#中通过jquery赋值时获取文本框的值

javascript - 如果任一输入字段已填写,如何验证表单?

javascript - 从本地主机调用 api 的生产环境

javascript - 连接突然断开,没有任何错误消息

php - 在多列中显示单选框列表

php - Prestashop $logged 和 $is_logged

javascript - Smarty 没有正确调用外部 javascript 文件?