如何用javascript为网页的DIV标签添加PHP代码?

原来网页DIV部分如下:
<div id="msg">
<?
include("1.php");
?>
</div>
javascript中有个函数,目的是调用后让原本包含的1.php变成2.php
function outmsg()
{
document.getElementById('msg').innerHTML = "<? include(\"2.php\");?>";
}
结果一调用直接把<? include("2.php");?>显示到网页上去了,如何不让它显示而是出现把2.php的内容插到div标签处呢?
用 iframe 宽度自适应还得写一段代码,实在不行就得这么用了。
-------------------------------------------------
把<?include (\"2.php"\)?> 直接的插入到页面中, include 一个变量 ,然后用js来控制变量的值。是1.php 还是 2.php
JS变量放到PHP代码里提示出错,我是这样写的:
include("<script> var t;t="1.php";document.write(t)</script>");

最终我做了4个div隐藏其中的3个,实现了希望的效果。感谢各位的帮助!

这种是不可能的。PHP是在生成页面之前执行,而javascript是在生成之后执得。你用浏览器打开的页面实际上是看不到<? include.... 这些 PHP 代码的,看到的是PHP执行之后的结果。
要实现你说的这种有两个办法:
一是新建一个单独的页面,用来包括2.php,然后在执行outmsg()的地方直接转到这个新页面。
二是在当前这个页面上加一个参数,在PHP中用$_REQUEST['参数名字']来获取,再用if判断,如果有参数,则include 2.php,否则include 1.php。在当前的页面执行outmsg()的时候就用一个表单提交到当前页面,把这个参数加上。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-01-04
你这个不用php 用iframe不行吗?
代码如下
<div id="msg">
<iframe id="msg_if" src="1.php" width="" height="">
</iframe>
</div>
<script type="text/javascript">
function outmsg()
{
document.getElementById('msg_if').src = "2.php";
}
</script>
万一不行给我留言
第2个回答  2011-01-04
我专门测试了下,你的这种写法是可以的,只是你的代码有问题,写成这样就好了,把转义符去掉
document.getElementById('msg').innerHTML = "<? include("2.php"); ?>";
通常PHP和JS代码混合情况下出问题时,很多都是多个符号少个符号的问题,页面运行后查看下源代码就容易找出问题所在了
第3个回答  2011-01-04
神奇了~

你难道不知道php是服务器端的吗~ js是客户端的~

php代码在服务器端先执行了才会相应给客户端,客户端接收完成后,js代码执行
第4个回答  2011-01-04
这样写实错误的,这样写是吧<?include (\"2.php"\)?> 直接的插入到页面中了
你可以 include 一个变量 ,然后用js来控制变量的值。是1.php 还是 2.php
相似回答