我目前的联动菜单实现了,以下是代码.麻烦路过的人帮忙看看,本人初学啊,没分了.主要为了实现两个dropdownlist的部门与姓名联动,再加上一个textbox的值,一起提交到表三
我的数据库是以下这样关联,请专家帮忙看看对不对.
表一(部门):
sortid   sort
1         研发部
2         财务部表二(姓名):
typeid  typename sortid
1        张三      1
2        李四     2
3        王五      1表三(全部数据):
id  typename  typeid  sort     wenti          ipaddress
1     张三     1     研发部   网断了哦        192.168.0.8
2     李四     2     财务部    打印机不行了   192.168.0.10存储过程:CREATE proc classdata
@usort varchar(50),
@utypename varchar(50),
@uwenti varchar(50)
as
insert into class_data (sort,typename,wenti) values (@usort, @utypename, @uwenti)
GO
aspx.cs代码:private void xmlBind(string sortid)
{
string mystr = "";
string sql = "select typename,typeid from class_2 where sortid = " + sortid ;
DataTable mytab = this.Get_Dt(sql); //将取到的值形成: ID|名称,ID|名称...这样的形式
if(mytab.Rows.Count != 0)
{
for(int i=0;i<mytab.Rows.Count;i++)
{
mystr += "," + mytab.Rows[i]["typeid"].ToString() + "|" + mytab.Rows[i]["typename"].ToString();
}
mystr = mystr.Substring(1);
} //输出页面
this.Response.Write(mystr);
this.Response.End();
}
private void DownBind1()
{
//显示所有的主分类
string sql = "select sortid,sort from class_1 order by sortid asc ";
DataTable mytab = this.Get_Dt(sql); //绑定第一个下拉框
this.mydown1.DataSource = mytab;
this.mydown1.DataValueField = "sortid";
this.mydown1.DataTextField = "sort";
this.mydown1.DataBind(); this.mydown1.Items.Insert(0,new ListItem("请选择分类",""));

ListItem myItem = this.mydown1.Items.FindByValue("1");
if(myItem != null)
{
myItem.Selected = true;
} this.mydown1.Attributes.Add("onchange","XmlPost(this,'" + this.mydown2.ClientID + "');");
} private void DownBind2()
{
//默认显示分类号为1的所有子类
   string sql = "select sortid,typename,typeid from class_2 where sortid =1" ;
   DataTable mytab = this.Get_Dt(sql); //绑牢控件
   this.mydown2.DataSource = mytab;
   this.mydown2.DataSource = mytab;
   this.mydown2.DataValueField = "typeid";
   this.mydown2.DataTextField = "typename";
   this.mydown2.DataBind(); //添加一个空的首行
this.mydown2.Items.Insert(0,new ListItem("请选择名称",""));
}

解决方案 »

  1.   

    在执行插入语句的地方这么用
    DropDownList1.SelectValue.ToString();
    DropDownList2.SelectValue.ToString();
    TextBox1.Text
    执行存储过程
      

  2.   

    我就是这样用的啊,提示失败
    Request.Form["mydown1"].ToString();
      

  3.   

    object paramValue = Request.Form["mydown1"];
    paramValue = (object.Equals(paramValue,string.Empty)?Convert.DbNull:paramValue;
      

  4.   

    cm.Parameters.Add(new SqlParameter("@usort",SqlDbType.VarChar,50));
    设断点:  无条件,总是中断,当前值为1
      

  5.   

    cm.Parameters["@usort"].Value=Request.Form["mydown1"];
    设断点:  无条件,总是中断,当前值为1
    cm.Parameters["@utypename"].Value=Request.Form["mydown2"];
    设断点:  无条件,总是中断,当前值为0不知啥原因