我需要在地址栏上取得传过来的值,但这个值包括特殊字符,比如“#”,空格等
如果用GET方法的话没办法取到这个特殊字符,请问有其他什么方法吗?另如果我在一个页面里PHP要用JS里的变量的值需要怎样做呢?

解决方案 »

  1.   

    urlencode && urldecode
      

  2.   

    但我的参数是从JS传过去的,PHP来接受!这两个函数好像不能用哦!
      

  3.   

    空格是可以得到的!# 号在url里表示锚点,它是给浏览器定位用的。不属于get参数,所以取不到
      

  4.   

    A. <script   language="JavaScript"   url="a.aspx?u=###"></script>
      
    B. 
    <script   language="JavaScript">  。
       var url=location.href;
       ut= url.split("U=");
       u=ut[1];
       alert(u); //输出  ###
       </script>  
      

  5.   

    用js把参数encodeURIComponent 或 encodeURI一下再传,具体区别可查看js语法手册
      

  6.   


    我不是要JS去取,我是要PHP去取JS传过来的!
      

  7.   

    哦  楼上的已经点出来了! 用JS encodeURI(URL)进行编码 
      

  8.   

    那PHP如何使用JS的变量值呢?在一个页面
      

  9.   


    问出这样的问题说明你对http的访问机制,对服务器端和客户端的概念没搞清楚!
    js是可以拔掉网线运行的(不提ajax),而php是要访问到服务器的,完全没有“在一个页面”的说法。js的作用范围是浏览器中“查看源文件”功能所能获得的html/css/js等全部内容,完全看不到所谓php代码的。
    而对于php来说,客户端的那些“html/css/js”等都是输出字符,是没有任何所谓语言差异的。
      

  10.   


    这个我知道,我要的是如果把客户端的参数交给服务器端来使用
    就是JS的值要能够PHP使用!