首页 新闻 会员 周边 捐助

DropDownList,Jquery ajax, 客户端绑定,服务器端SelectValue取不值

0
悬赏园豆:50 [已解决问题] 解决于 2008-12-23 15:20

  绑定DropDownList的代码如下:

Code

 

  绑定成功, 但是为什么服务器端SelectValue会取不到值? 只能用Request.Form["area"]取得到.

问题补充: 我不是说要在前台取值,是在后台, 用dorpdown.selectvalue(), 回小眼睛老鼠, 那只能用request.from[“id”]取值?
问天何必的主页 问天何必 | 老鸟四级 | 园豆:3311
提问于:2008-12-10 09:42
< >
分享
最佳答案
0

其实asp。net 所谓的服务器的value是在后台生成好一套和前台对应的数据

然后根据前台返回的

匹配后台的数据 才能取value

你想想 asp。net 没有改html之内的东西吧

那么select标记在response里返回的是什么??

返回的就是一个value的值吧

但是为什么你可以通过text 或者value取到dropdownlist的值呢

这个就好象是response返回的是键值

其实在生成时候还有一套和这个键值相关的数据 例如text 页就是前台显示的innerhtml

然后通过这个匹配取道的

而不经过服务器 直接在本地加的

显然没有经历生成一套键值的过程

那服务器又怎么可能取得到

小眼睛老鼠 | 老鸟四级 |园豆:2731 | 2008-12-10 12:21
其他回答(5)
0

对于服务器端的DropDownList控件,也可以在前台获值,如下:

(1).取得DropDownList的索引值  i=document.all("DropDownList").selectedIndex;

(2).取得DropDownList的下拉框中的文本值:

         ddlText=document.all("DropDownList").options[i].text;

    或者:ddlText=document.all("DropDownList").options[i].value;

sl2008 | 园豆:407 (菜鸟二级) | 2008-12-10 10:05
0

以前遇到过类似的问题,在前台绑定的控件在后台是不能直接获取值的,只能用Request.Form["area"]或Request["area"]方式获取

迷梦江南 | 园豆:65 (初学一级) | 2008-12-10 10:32
0

会不会你在页面的Load地方有对这个Dropdpwnlist的初始化工作!导致回传以后又被重置了

GUO Xingwang | 园豆:3885 (老鸟四级) | 2008-12-10 17:54
0

 this.DropDownList1.DataTextField = "name";
        this.DropDownList1.DataValueField = "id";
        this.DropDownList1.DataSource = dt;
        this.DropDownList1.DataBind();

dt是数据库表用这个试试

wolfes | 园豆:174 (初学一级) | 2008-12-12 12:37
0

我现在也遇到这个问题,取值是搞定了。但是修改时在后台赋值,也有问题。

szny | 园豆:60 (初学一级) | 2010-12-22 14:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册