dongya5893 2016-08-11 13:36 采纳率: 100%
浏览 283
已采纳

将HTML转换为有效字符串

I currently have a PHP project that uses the Zend Framework. When a user clicks a button, I am using a partial to get the HTML that needs to be added to the page. The problem is that the HTML seems to be returned as HTML rather than a string:

document.getElementById("active_projects").innerHTML='<?php echo $this->partial("project/project/activeprojectstable.phtml", array(
    "headers" => $headers, 
    "active" => $this->active

))?>';

.innerHTML = takes a string, but the HTML has new lines and special characters that it does not accept. How can I convert the HTML to a valid HTML string?


Update:

For a better idea of the HTML being produced by the partial that is causing the issues, this is what it evaluates to:

error from html

  • 写回答

2条回答 默认 最新

  • drrhr20884 2016-08-11 14:12
    关注

    Try encapsulating your partial into a script tag with type="text/template". Browser will not understand what type of script it is, therefore it will not execute it. Nevertheless, you can still access its contents, even if they are multiline.

    <script type="text/template" id="active_projects_template">
      <?php echo $this->partial("project/project/activeprojectstable.phtml", array(
        "headers" => $headers, 
        "active" => $this->active
      ))?>
    </script>
    
    <script type="text/javascript">
      // ...
      document.getElementById("active_projects").innerHTML=document.getElementById("active_projects_template").innerHTML;
      // ...
    </script>
    

    Similar pattern is being used by templates in AngularJS (type is set to text/ng-template).

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算