【问题标题】:Loading content into div from tabs将内容从选项卡加载到 div
【发布时间】:2014-01-11 19:59:40
【问题描述】:

当点击<li> 时,我正在尝试使用包含 html sn-p 的 php 变量在 div 内显示。如果变量仅包含没有 html 的文本字符串,则以下代码有效。但是,一旦我添加了 html,它就会停止工作。我做错了什么?

我已根据下面收到的帮助更新了代码,但仍然无法正常工作。

这行得通:

$(function() {
            $('#tab-1').click(function() {
                    alert('click event called!'); var tabcontent = "Test Content";
                    document.getElementById('top-tabs-content').innerHTML = tabcontent;
            });
            });

这不是:

$(function() {
            $('#tab-1').click(function() {
                    alert('click event called!'); var tabcontent = "<?php echo json_encode($tabcontent[0]);?>";
                    document.getElementById('top-tabs-content').innerHTML = tabcontent;
            });
            });

【问题讨论】:

  • 当您使用console.log(tabcontent) 记录变量时它会说什么?
  • 所以我已经确定,如果我取出函数的“回声”部分使其显示为alert('click event called!'); var tabcontent = "&lt;?php json_encode($tabcontent[0]);?&gt;";,该函数将起作用,但不会显示任何内容(显然)。回声可能出了什么问题?有没有其他方法可以做到这一点?

标签: javascript php variables tabs


【解决方案1】:

尝试替换

var tabcontent = "<?php echo $tabcontent[1]; ?>"

var tabcontent = "'" + "<?php echo $tabcontent[1]; ?>" + "'";

【讨论】:

  • 是的,如果你想安全var tabcontent = "'" + "&lt;?php echo htmlentities($tabcontent[1],ENT_QUOTES);?&gt;" + "'";
  • 感谢您的帮助。它仍然不太有效。我已经用我目前拥有的内容更新了这个问题。
  • 好的,我用 html 上下文添加了整个 sn-p。我从数组中获取 php 变量。我在脚本上方很好地呼应了那个变量,所以我知道它正在返回某种值。
  • 我测试了你的JS代码,没有任何问题。可能还有其他东西不能让它运行......确保你的javascript和jquery onclick函数没有任何错误被调用(尝试在onclick函数中使用alert(tabcontent);。并确保你得到来自 php 变量的东西。
  • 我肯定从 php 变量中得到了一些东西,因为我成功地将它显示为第一个选项卡的默认文本。我不精通javascript,所以解决这类问题有点超出我的能力......我会继续努力解决这个问题。
【解决方案2】:

找到解决方案! preg_replace 和addslashes 可以使javascript 正确。问题是变量中的 html 是多行的,这在 JS 函数中不起作用。这是将 JS var 设置为 PHP var 而不会破坏它的方法:

var tabcontent = "<?php echo preg_replace("/\r?\n/", "\\n", addslashes($tabcontent[1]));?>";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-01
    • 1970-01-01
    • 2016-11-17
    • 1970-01-01
    • 1970-01-01
    • 2022-08-15
    相关资源
    最近更新 更多