Asp.net listBox和Jquery

Asp.net listBox和Jquery,asp.net,jquery,Asp.net,Jquery,我正在使用这种jQuery我不知道在什么事件上应该做什么,在哪里可以保存视图状态,或者我如何使用hiddenField来保存两个列表框的状态 <script language="javascript" type="text/javascript"> $(document).ready(function() { //If you want to move selected item from fromListBox to toListBox

我正在使用这种jQuery我不知道在什么事件上应该做什么,在哪里可以保存视图状态,或者我如何使用hiddenField来保存两个列表框的状态

<script language="javascript" type="text/javascript">
         $(document).ready(function() {
            //If you want to move selected item from fromListBox to toListBox
                $("#add").click(function() {
                    $("#"+'<%= fromListBox.ClientID %>'+" option:selected").appendTo("#"+'<%=toListBox.ClientID %>');
                });
                //If you want to move all item from fromListBox to toListBox
                $("#addAll").click(function() {
                    $("#"+'<%= fromListBox.ClientID %>'+" option").appendTo("#"+'<%=toListBox.ClientID %>');
            });
                //If you want to remove selected item from toListBox to fromListBox
                $("#remove").click(function() {
                    $("#"+'<%=toListBox.ClientID %>'+" option:selected").appendTo("#"+'<%= fromListBox.ClientID %>');
                });
                //If you want to remove all items from toListBox to fromListBox
                $("#removeAll").click(function() {
                    $("#"+'<%=toListBox.ClientID %>'+" option").appendTo("#"+'<%= fromListBox.ClientID %>');
                });

            });
                  </script>

<asp:ListBox ID="fromListBox" runat="server" SelectionMode="Multiple" Height="150px" Width="150px"  >

<asp:ListItem Text="Student Enrollment ID" Value="enrollment_no"></asp:ListItem> <asp:ListItem Text="Student Name" Value="first_name"></asp:ListItem> <asp:ListItem Text="Last Name" Value="last_name"></asp:ListItem> <asp:ListItem Text="Father Name" Value="father_name"></asp:ListItem>

</asp:Listbox>

<asp:ListBox runat="server" ID="toListBox" ></asp:ListBox>

$(文档).ready(函数(){
//如果要将所选项目从列表框移动到列表框
$(“#添加”)。单击(函数(){
$(“#”+“”+”选项:选中)。附加到(“#”+“”);
});
//如果要将所有项目从列表框移动到列表框
$(“#addAll”)。单击(函数(){
$(“#“+”+”)。附加到(“#“+”);
});
//如果要将所选项目从toListBox删除到fromListBox
$(“#删除”)。单击(函数(){
$(“#”+“”+”选项:选中)。附加到(“#”+“”);
});
//如果要将所有项目从toListBox删除到fromListBox
$(“#删除所有”)。单击(函数(){
$(“#“+”+”)。附加到(“#“+”);
});
});

我认为您应该使用普通的html列表框,而不是asp.net服务器控件。 这里有一些建议。您可以为jquery找到合适的代码,它可以在列表框之间移动项目

我认为你有三个选择:

  • 使用普通的HTML列表框,编写一些javascript代码,并使用标准POST请求在服务器上使用它们进行操作
  • 在列表框中使用UpdatePanel(这样可以消除页面闪烁,并且可能不必使用jQuery或重写现有代码)
  • 查找或编写自己的控件,该控件使用javascript移动项目并管理viewstate本身

我会使用HTML列表框(选择元素)来避免视图状态问题。这将为您节省大量时间。

保留代码是这样的吗?我想在我松开列表框的同时保留回发时两个列表框的值。请建议适当的解决方案。您觉得您的代码片段可读吗?我不。您应该考虑在每行开始时使用4个空白,而不是用<代码> > /代码>块引用。同样,出于可读性的原因,在注释部分发布大型代码片段也是无用的。我鼓励你继续编辑你的问题。我在编辑方面很差。请编辑它,先生,或者让我知道我应该如何编辑它。对于我来说,选择代码段并在编辑模式下按
Ctrl+K
,总是一个问题。好,你是真的,我可以使用更新面板和列表框,但我想通过自定义控件学习它。您能告诉我如何将ajax集成到我以前从未做过的项目中吗?我需要做什么?请检查:但实际上,不要创建您将在项目中使用一两次的自定义控件。最好只使用一些javascript创建ascx。速度快得多。