1

我在我的页面 lbox1 和 lbox2 lbox1 中有两个 asp.net 列表框控件在后面的代码中填充。现在用户可以在 lbox1 上选择项目,然后通过单击按钮将所选项目放入 lbox2。我使用 javascript 执行此操作,因为我不想在每次点击时回发。

这是javascript函数:

function Updatelist() {
            var sel = document.getElementById("lbox1");
            var listLength = sel.options.length;
            for (var i = 0; i < listLength; i++) {
                if (sel.options[i].selected)
                    document.getElementById("lbox2").add(new Option(sel.options[i].value));
            } 
        }

现在我需要使用另一个按钮在服务器端发送 lbox2 的内容。我认为使用带有 onserverclick 事件的简单 asp 按钮不起作用,因为在服务器端 lbox2 永远不会填充!

我能怎么做 ?

4

2 回答 2

0

为避免回发,请使用 html 下拉菜单...您的代码答案如下:-

函数 Updatelist() { var sel = document.getElementById("lbox1");

        var listLength = sel.options.length;

        var opt = document.createElement('option');

        document.getElementById("lbox2").options.add(opt);            
         for (var i = 0; i < listLength; i++) {
             if (sel.options[i].selected) {
                 document.getElementById("lbox2").options.add(opt);
                 opt.text = sel.options[i].value;
                 opt.value = sel.options[i].value;
             }
        } 
    }
于 2013-05-02T17:53:25.667 回答
0

您需要添加一个按钮和 JS 函数,将控件中的值复制lbox1<asp:HiddenField>控件中。回发后,所选值将在隐藏控件的Value属性中可用。

于 2013-05-02T15:41:28.313 回答