none
Request使用的请教 RRS feed

  • 问题

  • 我在网页有几个(数量每次不定)<input type="text" name="answer01"><input type="text" name="answer02">输入框,请问我应该怎样才能通过使用Request将这些输入的内容读取到服务器,除了Request外还有别的方法没?谢谢

    用Request.Form("answer").Count可以得出<input>的总数吗?还是将所有<input>的name都设定为一样的(如answer),程序读取网页时会按照从左向右再向下读取吗?(即按顺序)

    请高手指点一下。


    新手学习,再学习......

    2010年5月4日 9:11

答案

全部回复

  • 把input的name用同一个名,然后再后台Request这个name就能得到这些input
    2010年5月4日 9:25
  • 感谢 杨琦,上次就是你帮我回答的,谢谢哈。是不是按照顺序读取的?

    使用Request.Form("name")(1) 读取第一个<input>,Request.Form("name")(2)读取第二个,是不是就可以可用for循环读取所有的<input>呢?

     


     

    新手学习,再学习......

    2010年5月4日 9:26
  • Request["name"],读出的是按顺序排列的值(按逗号分隔),然后拆就行了
    2010年5月4日 9:32
  • 感谢你的帮助,是不是Request.Form("name")(1)就可以确定读取哪一个<input>啦?直接用Request["name"]需要将逗号剔除,感觉有点麻烦,呵呵。

    出现了一个问题,我把Request.Form("name").Count写在.aspx.cs中,就出错了,说Request是方法,在上下文中无效。我的当前网页使用了母版,没有<form></form>,所以无法在当前也中写入method="post",请问怎么解决?

     


     

    新手学习,再学习......

    2010年5月4日 9:37
  • 已这种形式传入的参数就会被认为是一个完整的字符串,所以无论是取得第一个参数还是求和都要用Split的方法。

    2010年5月5日 1:29
  • 参考

    http://dotnet.aspx.cc/article/e6e35e3c-2c28-4dad-acbb-db78d2785776/read.aspx

     

    你可以判断Request.Params.Keys[i]是否是以answer开头


    【孟子E章】
    2010年5月5日 1:34
    版主
  • 还是出错,“Request是方法,在上下文中无效”。

    我编写的当前页是使用了母版的,即没有<form></form>,只有<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"></asp:Content>这样的标签。是不是没有<form method=“post”>就不能使用Request啊?


    新手学习,再学习......
    2010年5月5日 1:41
  • 补充一下,Request读取最好的方式是Request.Params.GetValues("name"),这样返回的是一个数组,避免了取text值的时候控件本身输入逗号的问题
    2010年5月5日 1:42
  • 我使用for (int ii = 1; ii <= Request.Form("userAnswer").Count; ii++)但是Request下面有红色波浪线,是不是没有<form method=“post”>的原因?

    回复 杨琦,谢谢你的回答,返回一个数组非常适合我用,我现在就是不能使用Request。郁闷!!

    错误 3 “WebApplication_Exam.WebForm1.Request(string)”是一个“方法”,这在给定的上下文中无效 D:\My Documents\Visual Studio 2008\Projects\WebApplication_Exam\WebApplication_Exam\WebForm1.aspx.cs 57 44 WebApplication_Exam


    新手学习,再学习......

    2010年5月5日 1:47
  • var temp = Request.Params.GetValues("name");
    foreach (string t in temp){ }
    2010年5月5日 1:55
  • 回复 杨琦,你这个方法非常好,也是我要的。但是仍然出错。Request有红色波浪下划线。

    错误 3 “WebApplication_Exam.WebForm1.Request(string)”是一个“方法”,这在给定的上下文中无效 D:\My Documents\Visual Studio 2008\Projects\WebApplication_Exam\WebApplication_Exam\WebForm1.aspx.cs 61 32 WebApplication_Exam

    这是什么原因啊?我在<asp:Content><asp:/Content>中间添加<form id="form1" action="WebForm1.aspx" runat="server" method="post">后,也不行。

    问题是Request在给定上下文中无效。请高手帮我看看。


    新手学习,再学习......
    2010年5月5日 2:02
  • 我搞定了,找到方法了。谢谢杨琦 孟宪会的帮助。
    新手学习,再学习......
    2010年5月5日 2:12