
这个asp二级联动下拉框问题在哪?
这2个下拉框可以实现联动!但是第二个下拉框得出的不是符合条件的结果!请帮我看看问题在哪~~跪谢<selectname="bumen"id="02"onchange="my...
这2个下拉框可以实现联动!但是第二个下拉框得出的不是符合条件的结果!请帮我看看问题在哪~~跪谢
<select name="bumen" id="02" onchange="mychange(this.options.selectedIndex);">
<option value="全部部门">全部部门</option>
<% Set rs= Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM bumen"
Rs.open sql,conn,1,3
if not rs.eof then
for i=1 to rs.recordcount
%>
<option value="<%=trim(rs("bmname"))%>"><%=rs("bmname")%></option>
<% rs.movenext
next
end if
%>
</select></td>
</tr>
<tr>
<td height="28" id="居中2">员 工</td>
<td align="center" valign="baseline">
<select name="xm" id="xm">
<option value="全部">全部</option>
</select></td>
</tr>
<script type="text/javascript">
var aaa=0;
bb=new Array();
<%dim rs1
count =0
set rs1=server.createobject("adodb.recordset")
sql="Select * from users "
rs1.open sql,conn,1,3
do while not rs1.eof
%>
bb[<%=count%>]=new Array("<%=trim(rs1("bumen"))%>","<%=trim(rs1("name"))%>");
<%count=count+1
rs1.movenext
loop%>
aaa=<%=count%>
function mychange(bm)
{
document.form1.xm.length=0;
var bm=bm;
document.form1.xm.options[0]=new Option('全部员工..','');
for(var i=0;i<aaa;i++)
{
if(bb[i][0]=bm)
{
document.form1.xm.options[document.form1.xm.length]=new Option(bb[i][1],bb[i][2]);
}
}
}
<%rs1.close
set rs1=nothing
%></script>
等到的是所有的人员~而不是这个部门的人员! 展开
<select name="bumen" id="02" onchange="mychange(this.options.selectedIndex);">
<option value="全部部门">全部部门</option>
<% Set rs= Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM bumen"
Rs.open sql,conn,1,3
if not rs.eof then
for i=1 to rs.recordcount
%>
<option value="<%=trim(rs("bmname"))%>"><%=rs("bmname")%></option>
<% rs.movenext
next
end if
%>
</select></td>
</tr>
<tr>
<td height="28" id="居中2">员 工</td>
<td align="center" valign="baseline">
<select name="xm" id="xm">
<option value="全部">全部</option>
</select></td>
</tr>
<script type="text/javascript">
var aaa=0;
bb=new Array();
<%dim rs1
count =0
set rs1=server.createobject("adodb.recordset")
sql="Select * from users "
rs1.open sql,conn,1,3
do while not rs1.eof
%>
bb[<%=count%>]=new Array("<%=trim(rs1("bumen"))%>","<%=trim(rs1("name"))%>");
<%count=count+1
rs1.movenext
loop%>
aaa=<%=count%>
function mychange(bm)
{
document.form1.xm.length=0;
var bm=bm;
document.form1.xm.options[0]=new Option('全部员工..','');
for(var i=0;i<aaa;i++)
{
if(bb[i][0]=bm)
{
document.form1.xm.options[document.form1.xm.length]=new Option(bb[i][1],bb[i][2]);
}
}
}
<%rs1.close
set rs1=nothing
%></script>
等到的是所有的人员~而不是这个部门的人员! 展开
3个回答
展开全部
#region 绑定DropDownList 控件代码
public static bool ControlClass(DropDownList CN, string SqlStr, string TF, string VF)
{
SqlConnection conn = DBConn.conn();
SqlCommand cmd = new SqlCommand(SqlStr, conn);
try
{
conn.Open();
SqlDataReader der = cmd.ExecuteReader();
CN.DataSource = der;
CN.DataTextField = TF;
CN.DataValueField = VF;
CN.DataBind();
return true;
}
catch
{
return false;
}
finally
{
conn.Close();
cmd.Dispon();
}
}
#endregion
代码1:
调用类里的 方法
if(!IsPostBack)
{
上面类名.ControlClass(DropDownList1, "select * from cdb_members", "userName", "uid");
// 把一级DropDwonList的AutoPostBacke 设置为true;
然后在设置第二个DropDowlist
代码:
OperationDataClass.ControlClass(DropDownList2, "select * from cdb_members where uid = '" + this.ddlItems.SelectedValue + "'", "userName", "uid");
}
////首先数据库这两个表必须是关联的
要是再不明白,可以去 #24
不给分就不够意思了
public static bool ControlClass(DropDownList CN, string SqlStr, string TF, string VF)
{
SqlConnection conn = DBConn.conn();
SqlCommand cmd = new SqlCommand(SqlStr, conn);
try
{
conn.Open();
SqlDataReader der = cmd.ExecuteReader();
CN.DataSource = der;
CN.DataTextField = TF;
CN.DataValueField = VF;
CN.DataBind();
return true;
}
catch
{
return false;
}
finally
{
conn.Close();
cmd.Dispon();
}
}
#endregion
代码1:
调用类里的 方法
if(!IsPostBack)
{
上面类名.ControlClass(DropDownList1, "select * from cdb_members", "userName", "uid");
// 把一级DropDwonList的AutoPostBacke 设置为true;
然后在设置第二个DropDowlist
代码:
OperationDataClass.ControlClass(DropDownList2, "select * from cdb_members where uid = '" + this.ddlItems.SelectedValue + "'", "userName", "uid");
}
////首先数据库这两个表必须是关联的
要是再不明白,可以去 #24
不给分就不够意思了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-03-04
展开全部
这里有一个多级联动下拉select菜单
还可以自己设置默认显示值
里面有代码可以参考
还可以自己设置默认显示值
里面有代码可以参考
参考资料: http://www.blueidea.com/common/shoutbox/redir.asp?3=u&id=11685
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码有问题,而且太乱了
你把输出的js代码帖出来,我帮你改好js的格式
你把输出的js代码帖出来,我帮你改好js的格式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询