浏览器注释掉使用JS插入的代码


Browser commenting out the code inserted using JS

我正在尝试使用JS将php echo语句插入div标记中,但浏览器正在注释掉代码。

   <!--?php echo $desci[1]?-->

这是我的代码,我是JS的新手,请帮助

   $('.wrapinner').click(function(e) {
         $('.wrapinner').css("margin-top","0");
         $('.wrapinner').css("opacity","0.4");
         $(this).css("margin-top","25px");
         $(this).css("opacity","1");
         var id = this.id;
         var str = "<";
         str+= "?php echo $desci[";
         str+= id;
         str+= "]?>";
         document.getElementById("con").innerHTML=str;
    });
     var str = "<";
     str+= "?php echo $desci[";
     str+= id;
     str+= "]?>";
     document.getElementById("con").innerHTML=str;

当您将某个内容分配给innerHTML时,它会被解析为HTML。

然而,<?php echo $desci[1]?>不是有效的HTML代码。在XML中,它可能被视为一条处理指令(以<?开头的指令),但浏览器无法理解。

如果您只想将其显示为文本,则将其分配为文本:

document.getElementById("con").textContent=str;

或者通过以正确的方式将<>转义为&lt;&gt;,使字符串内容一开始就不能被解释为HTML。