首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

给listbox和<INPUT id="xx" name="xx" runat="server"

2012-01-05 
给listbox和INPUT idxx namexx runatserver 赋值问题c#.net中(mssqlserver2000,,vs.net2003),

给listbox和<INPUT id="xx" name="xx" runat="server"> 赋值问题
c#.net中(ms   sql   server2000,,vs.net2003),在做一个用户信息修改页面时,碰到问题:
页面上控件如下:1、两个dropdownlist下拉框,一个显示省份,一个显示城市;两个通过无刷新实现联动;
                              2、一个listbox,显示添加的多个城市名;
                              3、两个 <INPUT   id= "xx "   name= "xx "   runat= "server ">   ,当listbox有变动时,一个同步显示listbox中城市的id,一个同步显示listbox中城市名;多个id和城市名用,隔开;如:1001,1002,1003;北京,上海,深圳。
                              4、两个 <INPUT   class= "buttoncss "   type= "button "   > 按钮,一个“添加”,一个“删除”;
                              5、一个“保存”按钮,将两个 <INPUT   id= "xx "   name= "xx "   runat= "server ">   中的城市id和城市名分别保存到数据库的城市id和城市名两个字段中。在后台用C#代码实现。

当点击“添加”,显示城市的dropdownlist下拉框中的城市名添加到listbox中,同时,同步地将城市的id和城市名分别添加到两个 <INPUT   id= "xx "   name= "xx "   runat= "server ">   中,可添多个,“删除”功能则反之;功能是通过JavaScript在前台实现。

问题是:当修改页面打开时,listbox,和两个INPUT   id= "xx "   name= "xx "   runat= "server ">   要显示已保存在数据库中的原记录,通过什么方法实现此功能呢?如在后台用C#提取数据库中数据再赋值给上面三个控件,在前台JavaScript却无法实再修改,望各位老师和前辈指教一下。

“添加”按钮的JavaScript代码如下:
    function   AddItem2(ControlName)
      {

        Control   =   null;
        Control=eval( "document.Form1.listNewEmp2 ");    
        var   x=0;
        var   i=0;
        var   y=0;
        DropDownList14=eval( "document.Form1.DropDownList14 ");
        listNewEmp2=eval( "document.Form1.listNewEmp2 ");
        var   j=DropDownList14.length;
       
        for(i=0;i <j;i++)
        {
          if(DropDownList14.options[i].selected==true)
          {  
            //alert(Control.length);
                  if(Control.length==0)
                  {
              Control.add(new   Option(DropDownList14[i].text,DropDownList14.options[i].value));  
              listNewEmp2=eval( "document.Form1.listNewEmp2 ");
              continue;
                  }
                  else
                  {
              for(x=0;x <listNewEmp2.length;x++)
              {
                if(DropDownList14.options[i].value==listNewEmp2.options[x].value)
                {
                  y++;


                 
                    alert( "你所选择的项目已经添加! ");
                }
               
              }
                  }
                  if(y==0)
                  {
              Control.add(new   Option(DropDownList14[i].text,DropDownList14.options[i].value));
              listNewEmp2=eval( "document.Form1.listNewEmp2 ");
                  }
          }
        }
       
                        listNewEmp2   =   eval( "document.Form1.listNewEmp2 ");  

        for(i=0;i <listNewEmp2.length;i++)
        {
              if(i==0)
              {
                      document.Form1.txtEmpID2.value=listNewEmp2.options[i].value;
                      //document.Form1.txtEmpID3.value=listNewEmp2.options[i].text;
              }
              else
              {
                      document.Form1.txtEmpID2.value+= ", "+listNewEmp2.options[i].value;
                    //   document.Form1.txtEmpID3.value+= ", "+listNewEmp2.options[i].text;
              }
        }

       
      }

能给的已有总分数不多,请各位原谅!


[解决办法]
当修改页面打开时,listbox,和两个INPUT id= "xx " name= "xx " runat= "server "> 要显示已保存在数据库中的原记录,通过什么方法实现此功能呢?

既然你初始化的值存在数据库中,页面Load的时候在后台、就已经从数据库取到值赋值。

也可以在前台 <body onlaod= "initData() ">
在initData()离读取数据库的值

热点排行