【问题标题】:How to escape second tier html quotes in a php echo?如何在 php echo 中转义第二层 html 引号?
【发布时间】:2016-05-21 16:54:42
【问题描述】:

我找不到在 php echo 中转义第二层 html 引号的方法:

PHP 
echo "<div id='myDiv'></div>
<select onchange='myfunction(this,"#myDiv")'>
options and such 
</select>
";

似乎转义不仅适用于 php,还适用于 html 才能正常工作。 我什至尝试将 myfunction 的第二个参数保存为 php 变量并将其传递给 echo 但 jquery 不接受这一点。 ..或者也许我做错了。

【问题讨论】:

    标签: php jquery html syntax jquery-selectors


    【解决方案1】:

    尝试这样使用:

       echo '<div id="myDiv"></div>
              <select onchange="myfunction(this,\'#myDiv\')">
                  options and such 
              </select>';        
    

    【讨论】:

      【解决方案2】:

      您需要使用反斜杠转义引号。现在应该可以工作了:

      echo "<div id='myDiv'></div>
      <select onchange='myfunction(this,\"#myDiv\")'>
      options and such 
      </select>
      ";
      

      应该是回声:

      <div id='myDiv'></div>
      <select onchange='myfunction(this,"#myDiv")'>
      options and such 
      </select>
      

      希望这会有所帮助!谢谢。

      【讨论】:

      • 谢谢,但我尝试了这个,它适用于 PHP ...但是当代码运行并且 echo 在 DOM 中变为 html 时,反斜杠被读取为字符而不是转义符。
      • @KyleM 我也在 Chrome 中尝试过,代码应该可以工作 :)
      • 页面比较复杂,我不确定我错过了什么,显然这只是一个例子。非常感谢...我发现使用@Supun 所显示的相反引号使其起作用。谢谢你们。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-21
      相关资源
      最近更新 更多