陈斌彬的技术博客

Stay foolish,stay hungry

服务端与客户端交互流程

一:交互示意图

img

二:具体实现

要求

  1. 在客户端要写明提交到的界面的名称,如图所示
  2. 在接收端使用Request关键字,如图所示

总体图:

img

提交端:

img

接收端:

img

实例:将Login.htm界面中文本框txtUserName,txtUserPwd中的值提交到Login.aspx中接收 Login.htm中的代码:

<body>  
 <form id="form1" method ="post" action ="Login.aspx" >  
    <table style="width:100%;">  
        <tr>  
            <td width="100">用户名:</td>  
            <td width="150"><input id="txtUserName" name="txtUserName" type="text" /></td>  
        </tr>  
        <tr>  
            <td class="style1" width="100">密 码:</td>  
            <td class="style1" width="150"><input id="txtUserPwd" name="txtUserPwd" type="text" /></td>  
        </tr>  
        <tr>  
            <td colspan="2" align="center">  
                <input id="Submit1" type="submit" value="提交" />  
                <input id="Submit2" type="submit" value="退出" />  
            </td>  
       </tr>  
    </table>  
   </form>  
</body>  

Login.aspx中的代码:

protected void Page_Load(object sender, EventArgs e)  
        {  
            string userName = Request.Form["txtUserName"].ToString ();  
            string userPwd = Request.Form["txtUserPwd"].ToString ();  

            if (userName=="lsz" && userPwd=="lsz")  
            {  
                Response.Write("欢迎进入网站");  
            }  
            else  
            {  
                Response.Write("用户名和密码不正确");  
            }  
        }  

三:错误积累

1.在提交界面中可以使用“post”提交,也可以使用“get”提交,两者的不同,是在接收端语句不同

post:

    Request[""].ToString();  
    Request[""].Form.Get("").ToString();  

get:

    Request.QueryString[""].ToString();  

如果提交界面用的是关键字“post”,接收端用的是get关键字的接收语句,则会出现如下错误:

img

2.接收端[“”]中的名称是提交端 “name”的名称,不是“Id”的名称

img

一般情况下id是特殊标识,使用的时候,直接引用id对应的名称即可,但是在这里却行不通,必须有name。

img