点击按钮后台可以取到值,但如果用在INPUT 中用回车激发按钮事件 后台总是取不到值
比如我选择下拉框的第二个值 然后点击按钮 会将 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>
<script language="javascript" type="text/javascript">
function GetMethod()
{
var val=document.getElementById("select").value;
location.href="Default.aspx?id="+val;
}
function inputKeyDown()
{
if(event.keyCode==13)
{
document.getElementById("Button1").click();
}
}
</script>
</head>
<body>
<form id="form1" method="get">
<div>
<input id="Text1" type="text" onkeydown="inputKeyDown()" />
<input id="Button1" type="button" value="button" onclick="GetMethod()"/>
<select id="select">
<option value="0" selected="selected">zonghe</option>
<option value="1">wenzhang</option>
<option value="2">chanpin</option>
</select>
</div>
</form>
</body>
</html后台using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("过来了");
if(!IsPostBack)
{
if(Request["id"]!=null)
{
Response.Write(Request["id"].ToString()+"</br>");
} if(Request.Params["id"]!=null)
{
Response.Write(Request["id"].ToString() + "</br>");
}
}
}
}
比如我选择下拉框的第二个值 然后点击按钮 会将 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>
<script language="javascript" type="text/javascript">
function GetMethod()
{
var val=document.getElementById("select").value;
location.href="Default.aspx?id="+val;
}
function inputKeyDown()
{
if(event.keyCode==13)
{
document.getElementById("Button1").click();
}
}
</script>
</head>
<body>
<form id="form1" method="get">
<div>
<input id="Text1" type="text" onkeydown="inputKeyDown()" />
<input id="Button1" type="button" value="button" onclick="GetMethod()"/>
<select id="select">
<option value="0" selected="selected">zonghe</option>
<option value="1">wenzhang</option>
<option value="2">chanpin</option>
</select>
</div>
</form>
</body>
</html后台using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("过来了");
if(!IsPostBack)
{
if(Request["id"]!=null)
{
Response.Write(Request["id"].ToString()+"</br>");
} if(Request.Params["id"]!=null)
{
Response.Write(Request["id"].ToString() + "</br>");
}
}
}
}
在Button1_Click中
Request.Form取值
试过了
Request.Form["id"]!=null
空的
<select id="select">变为<select id="select" name="id">,即增加name属性,值为"id"
去掉<form id="form1" method="get">
以及</form>这样就不用给<select id="select">添加name属性了。
{
if(event.keyCode==13)
{
event.keyCode=9; document.getElementById("Button1").click();
}
}
{
if(event.keyCode==13)
{
event.keyCode=9;
document.getElementById("Button1").click();
}
}
但添加NAME属性好像不行,添加NAME属性后还需要该其他地方?
恩,可以了 不过为什么加上event.keyCode=9;
后就可以了?