• [编程开发]asp.net应用技巧:js完成listbox内容的交互实例

  • 网网网络  阅读[0]次  评论[0]条  发布时间:2009-10-17  发布人:网网网络

文章摘要:[图文]asp.net应用技巧:js完成listbox内容的交互实例

  运行效果如下:

asp.net应用技巧:js完成listbox内容的交互实例

  这几天在做一个关于大学排名的网站,其中遇到了上图中的问题,需向某个对象中添加新的学校群体,这就用到了listbox,而要进行两个listbox之间的交互,无疑有两个办法:一个是在服务器端与客户端不停的postback,这无疑会大大降低效率。这是就体现出javascript在客户端的优势。下面介绍一下,又不足的地方希望大家指出!

  下面是js代码:用四个函数分别对应四个按钮,完成该功能。

〈script type="text/javascript"〉
        function selectall()
        {
            var lst1=window.document.getelementbyid("〈%=lb_sourse.clientid %〉");
            var length = lst1.options.length;
             var string = window.document.getelementbyid("〈%=hf_newname.clientid %〉")
            for(var i=0;i〈length;i++)
            {
                var v = lst1.options[i].value;
                var t = lst1.options[i].text;            
                var lst2=window.document.getelementbyid("〈%=lb_newname.clientid %〉");
                lst2.options[i] = new option(t,v,true,true);
                string.value+=v;
            }
        }
       
        function delall()
        {
            var lst2=window.document.getelementbyid("〈%=lb_newname.clientid %〉");
            var length = lst2.options.length;
            for(var i=length;i〉0;i--)
            {
                lst2.options[i-1].parentnode.removechild(lst2.options[i-1]);
            }
        }
       
        function selectone()
        {
          var string = window.document.getelementbyid("〈%=hf_newname.clientid %〉")
            var lst1=window.document.getelementbyid("〈%=lb_sourse.clientid %〉");
            var lst2=window.document.getelementbyid("〈%=lb_newname.clientid %〉");
            var lstindex=lst1.selectedindex;
            var length = lst2.options.length;
            var isexists = false;
            if(lstindex〈0)
                return;
            else if(length != null)
            {
                for(var i=0;i 〈 length; i++)
                {
                     if(lst2.options[i].text == lst1[lstindex].text&&lst2.options[i].value == lst1[lstindex].value)
                     {
                        isexists = true;
                     }
                }
            }
            else
            {
                return;
            }
            if (isexists == false)
            {
                var v = lst1.options[lstindex].value;
                var t = lst1.options[lstindex].text;
                lst2.options[lst2.options.length] = new option(t,v,true,true);
                string.value+=v;
            }
            else
            {
                alert("所选条目已经存在");
                return false;
            }
        }
       
        function delone()
        {
            var lst2=window.document.getelementbyid("〈%=lb_newname.clientid %〉");
            var lstindex=lst2.selectedindex;
            if(lstindex〉=0)
            {
                var v = lst2.options[lstindex].value+";";
                lst2.options[lstindex].parentnode.removechild(lst2.options[lstindex]);
            }
        }
〈/script〉

顶一下
(1000)
50%
踩一下
(1000)
50%
【已有0位网友发表了看法,点击查看。】 复制本页共享msn或qq等好友
  • 发表人:      可输入字数[200]字
  • 验证码:验证码,看不清楚?请点击刷新验证码  请输入计算结果
  • 法律声明:网友评论仅供网友表达个人看法,并不表明网网网络同意其观点或证实其描述
48小时评论排行
    友情链接