<a href='Result.sapx?id=2'>标题</a>
这样链接到Resut.aspx页面传的id 暂定为2
用AJAX在Result.aspx中向Result.aspx.cs POST了一个参数"action"
并用Request。Form["action"]获得了这个参数
因为上面的AJAX操作再用Request.QueryString["id"]为什么就取不到值了?        $(document).ready(function(){LoadData();});
 
        function LoadData()
        { 
            $.ajax({
                          type:  'POST',
                           url:  'Result.aspx',
                      dataType:  'text',
                          data:  'action=select',
                         cache:   false,
                       success:   GetInfo                              
                   }); 
        }     function GetInfo(data){//...}
我用的这样的方法 
估计是这个方法的影响  不用Request.Form["action"]就能取到id的值了……

解决方案 »

  1.   

    POST是用Request.Form取值.
    Get是用Request.QueryString取值.
      

  2.   

    Request.QueryString["id"]取地址栏的参数id不行么,这个是非AJAX的。
      

  3.   

    用Request[]来取比较通用,不管是用querystring还是在form中
      

  4.   

    Request.Params[]可以获取Post和Get传来的值,都可以。
      

  5.   

    我验证了的,读到的是空的,虽然地址栏看的到ID的值……
    不用jQuery 的AJAX,Request.QueryString["id"]就能获得ID的值……
    没找到原因……我的疑惑是为什么用了jQuery 的AJAX,Request.QueryString["id"]就读不到ID的值了,
    用Request.QueryString[0]还报错越界……

    在用jQuery 的AJAX的前提下,怎样才能读到ID的值呢……
      

  6.   

    直接把?后面的参数全部写到url里面去.
      

  7.   

    同意6楼...全部写在URL里面可以 URL参数编码! escape()
      

  8.   

    Request.QueryString["id"]是取URL?后面值的.你那样写肯定取不到啊.
      

  9.   

    倒,不是说了吗Request.Params["参数名"]
      

  10.   

    晕.你把type改为'GET'  
    Request.QueryString["id"]  就能获取到了
      

  11.   


    …………原因我已经找到了,F10、F11调试发现的。取值之前判断一下就OK了,这样可以避免取到的值被空值覆盖,如下:
    if(null==id || ""==id)
        Request.QyeryString["id"];
    另外还有个BUG我就不说了,会用到Session或者Application来解决。
      

  12.   

    Request.QueryString["id"]  
    上面写错了个字母……