提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
在ASP.NET里面,使用控件的页面样式很难写得好看,样式改不动,一方面也是由于我比较菜吧,所以想到使用传统的input来代替TextBox控件来实现一些功能,比如简单的表单验证,但是在实际练习的时候发现了无法直接获取radio选中的值
一、ASP.NET如何获取页面提交的数据
这里推荐使用Request[(input的name属性值)],这个方法可以获取GET和POST方式传来的数据,如果只需要POST,可以使用Request.Form[(input的name属性值)].
二、代码展示
1.前台代码
代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<input type="radio" name="sexs" value="男"/>男
<input type="radio" name="sexs" value="女"/>女
<input type="submit" name="name" value="提交"/>
</form>
<%=sex1 %>
</body>
</html>
2.后台代码
代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
public string sex1;
protected void Page_Load(object sender, EventArgs e)
{
sex1 = Request["sexs"];
Response.Write(sex1);
}
}
运行结果
当我们把radio的value值去掉的时候,只能获取单选按钮组是否有被选中的成员,并不能获取显示的值,所以遇到像radio这种类型,要把文字和value属性同时设置才能有显示和传值的效果,并不需要使用js这种的去判断是否被选中,来传参给后台。
总结
后台获取的都是input里value的值,当表单进行submit方法时,后台页面能够获取这些input的value属性值,像这种简单的表单提交,我们并不需要用js来调用后台方法来实现获取单选按钮被选中的值。