document.writeln("<td height=\"86\" align=\"left\" valign=\"top\"><input name=\"xmid\" type=\"text\" id=\"xmid\" value=\"<?php echo $xmid;?>\" /></td>");该段代码被包含在某个JS文件。当我调用此JS文件时,无法获得input的值。 也就是<?php echo $xmid;?>无法输出。
调用到的宿主页面,已经存在这个值。请问应该如何调用,谢谢各位大神。

解决方案 »

  1.   

    要注意代码的执行顺序,php先执行,输出HTML页面后才执行Javascript.
    document.write有可能在php执行后才输出,当然就不会解析<?php echo $xmid;?>了.
      

  2.   

    要注意代码的执行顺序,php先执行,输出HTML页面后才执行Javascript.
    document.write有可能在php执行后才输出,当然就不会解析<?php echo $xmid;?>了.
    _________________________________PHP在宿主页面头部已经执行了。而这个调用JS文件时在宿主页面下部。
      

  3.   

    查看源代码看看是否有值
    _________________________________是这样的,这个文件是:b.js我把它调用在:a.php里面,调用为<script src="b.js"></script>$xmid在a.php中是有值的。
      

  4.   

    document.writeln("<td height=\"86\" align=\"left\" valign=\"top\"><input name=\"xmid\" type=\"text\" id=\"xmid\" value=\"<?php echo $_GET["xmid'];?>\" /></td>");
    这个保存为b.php
    调用为<script src="b.php?xmid=$xmid"></script>
      

  5.   

    document.writeln("<td height=\"86\" align=\"left\" valign=\"top\"><input name=\"xmid\" type=\"text\" id=\"xmid\" value=\"<?php echo $_GET["xmid'];?>\" /></td>");
    这个保存为b.php
    调用为<script src="b.php?xmid=$xmid"></script>
    ____________________________________________________________你理解错了
    我是在a.php 中调用b.js.
      

  6.   

    这样不行, 你只能把那段js 写在a.php 。 如1楼说php解析页面输出html后在调用外部js
      

  7.   

    我怎么不知道直接写在php中呢?但是目前的设定就是这样。让b.js完美融合于a.php中,获得a.php中的某个值。
      

  8.   

    a.php中添加一个<input type=hidden >
    然后在b.js中getElementById。
    否则无法实现。
    js不会被当做php解析的。
      

  9.   

    a.php中添加一个<input type=hidden >
    然后在b.js中getElementById。
    否则无法实现。
    js不会被当做php解析的。
    ______________________________________________
    如你所说,已经调试成功。JS真他们脆弱,有一点错误都跑不过去。汗。