如何从 runat=server 的form中获得html控件的值??
我用request.from[ "控件名 "]不管用,大家还有什么好的方法么?
由于form会用到服务器端空间所以还不能把 runat=server 去掉,下面是一段类似的代码:
前台 <script>
function check()
{
if(document.getElementById( 'name ').value.length==0)
return false;
else
return true;
}
</script>
<form runat=server >
用户名: <input id= "name " type= "text " />
<asp:Button ID= "Button1 " runat= "server " OnClick= "Button1_Click " Text= "Button " OnClientClick= "return Check() "/>
</form>
后台 protected void Button1_Click(object sender, EventArgs e)
{
string name = Request.Form[ "name "].toString();//就这块有问题,获得不到值
Response.Redirect( "regResult.aspx?name "+name);
}
同志们帮解决一下 什么方法都可以 感激不尽
------解决方案--------------------Request.Form 取的是name属性值
用户名: <input id= "name " type= "text " name= "name " />
就可以了
自己手打HTML的吧
如果是拖控件,id和name都会自动生成,并且值相等
------解决方案--------------------要这样的呀 <input id= "name " type= "text " name= "name " />
------解决方案--------------------在cs中是不能用Request.form的
================================
是可以用的
只是被ViewState机制替换了一部分,变得更加的方便
------解决方案--------------------request.from[ "控件名 "]---控件名是该控件name属性,不过这样有点asp的风格了,还不如用textbox了
function check()
{
if(document.getElementById( 'name ').value.length==0)
return false;
else
return true;
}一样的也可以用这个方法
------解决方案--------------------加上name= " " ms老说ID取代name,后来发现很多地方没有name就是不行
------解决方案--------------------如果你打算动态注册一个javascript函数,例如里边的客户端id使用ClientID属性动态取得的,或者函数名动态产生(面的跟页面什么对象意外重复),应该使用在服务器端字符串里产生然后使用 RegisterStartupScript 动态输出到浏览器端,不要在设计器上写死。