使用php禁用javascript代码?
有没有办法使用特定的php代码禁用特定页面中的javascript代码?我需要确保页面中使用的所有JavaScript在运行时不会给出任何结果(甚至错误)。没有这种方法,因为PHP在服务器上运行,JavaScript在服务器完成部分工作后通过浏览器在客户端运行使用php禁用javascript代码?,php,javascript,Php,Javascript,有没有办法使用特定的php代码禁用特定页面中的javascript代码?我需要确保页面中使用的所有JavaScript在运行时不会给出任何结果(甚至错误)。没有这种方法,因为PHP在服务器上运行,JavaScript在服务器完成部分工作后通过浏览器在客户端运行 您可以做的是确保您的JS没有错误或删除所有JavaScript。您可以在JavaScript周围抛出PHP条件,这样它们就不会显示在您的页面上: <script type="text/javascript"> <?php
您可以做的是确保您的JS没有错误或删除所有JavaScript。您可以在JavaScript周围抛出PHP条件,这样它们就不会显示在您的页面上:
<script type="text/javascript">
<?php if($showJavascript): ?>
// executes the following function
myJavascriptFunc();
<?php endif; ?>
function myJavascriptFunc() {
}
</script>
//执行以下函数
myJavascriptFunc();
函数myJavascriptFunc(){
}
以及解决我评论中的任何问题:
<?php var showJavascript = <?php echo ($showJavascript) ? 'true' : 'false'; ?>;
<script type="text/javascript" src="myFile.js"></script>
;
在最后一种情况下,您应该检查myFile.js中showJavascript的布尔值。为什么不发送这些特定页面的javascript?最简单的方法(以及最脏、最慢的方法)是在页面开始时打开,然后在最后回显缓冲区的内容之前,通过正则表达式、html解析器或两者的组合删除所有javascript痕迹
<?php
ob_start();
// your code here
$output = ob_get_contents();
ob_end_clean();
// Purge your $output here, remove all <script> tags, onclick events, etc.
echo $output;
?>
如何清除输出已经被回答了很多次。s的答案是正确的,但是如果你的代码中有一个完整的javascript,那将是一件痛苦的事情。别担心,我给你+1回答你的问题,为什么你不接受答案。接受回答并从每个问题中获得2分这对
中包含的外部JS文件不起作用,但是如果您将条件作为一个整体围绕整个声明块抛出,它将起作用。您还可以在包含myscript.js之前设置一个全局变量,并检查该变量的文件。