首页 新闻 搜索 专区 学院

asp.net ajax生成二级下拉菜单 后台获取值问题

0
悬赏园豆:20 [已解决问题] 解决于 2009-05-20 15:39

我用AJAX成功生成二级下拉菜单。。可是后台调取不到值

 <select name="bigclass" id="bigclass" runat="server" onchange="smt_Select(this.value)"></select><select name="smallclass" id="smallcalss" runat="server"><option value="0">请选择</option></select>

 

后台我用的是:this.smallcalss.Value

请高手指导一下。

问题补充: <script> function smt_Select(obj){ $.ajax( { type:"post", url:"Include/AppValidate.aspx", datatype:"xml", data:"n=category&id="+obj+"&sid="+Math.random(), success:function(xml) { document.getElementById("smallcalss").length=0; $(xml).find("root > list").each( function(i){ var id=$(this).find("id").text(); var name=$(this).find("name").text(); document.getElementById("smallcalss").options[i]=new Option(name,id); } ) } }); } </script> <form id="form1" runat="server" action="ShopAdd.aspx?act=add" method="post"> <asp:HiddenField ID="contents" runat="server" /> <table width="100%" cellpadding="2" cellspacing="0"> <tr><td>产品类别:</td><td> <select name="bigclass" id="bigclass" runat="server" onchange="smt_Select(this.value)"></select> <select name="smallcalss" id="smallcalss" runat="server"><option value="0">请选择</option></select></td></tr> <tr><td>产品名称:</td><td><input type="text" value="" name="bookName" id="bookName" runat="server" /></td></tr> <tr><td>市场价:</td><td><input type="text" value="" name="bookMarketPrice" id="bookMarkePrice" runat="server" /></td></tr> <tr><td>产品图片:<asp:FileUpload ID="FileUpload1" runat="server" Width="475px" /></td></tr> <tr><td>书籍介绍:<iframe
Arorn的主页 Arorn | 初学一级 | 园豆:180
提问于:2009-05-11 23:20
< >
分享
最佳答案
0

这种情况,在服务器端取值时用,Request.Form["smallcalss"]就能取到值了。

Tony Lu | 初学一级 |园豆:32 | 2009-05-12 13:10
其他回答(3)
0

有没有出现什么提示问题?

Jaryleely | 园豆:367 (菜鸟二级) | 2009-05-12 00:12
0

楼主这里是不是没写全<select name="bigclass" id="bigclass" runat="server" onchange="smt_Select(this.value)"></select>,这里面至少应该有两个option项吧!这样子才会有onchange事件的吧!其次说一点,这里的 runat="server" 没必要的,除非你初始化option项的时候是在服务器端加载的!

在success:function(xml)
{
document.getElementById("smallcalss").length=0;这里面你可以先加一个alert(xml),用来确定是否有正确的返回值,然后再根据这个返回值调整你的程序结构即可

 

西越泽 | 园豆:10633 (专家六级) | 2009-05-12 10:14
0

ViewState关掉了?或者你是在 PageLoad之前取得值。这两种情况只能用Request.Form["smallcalss"]。

Azuresong | 园豆:3565 (老鸟四级) | 2009-05-12 13:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册