Javascript 在jQuery中被空数组替换后,列表框项仍然保留

Javascript 在jQuery中被空数组替换后,列表框项仍然保留,javascript,c#,jquery,listbox,Javascript,C#,Jquery,Listbox,我有一个列表框,我想在不刷新页面的情况下通过jQuery清除它 <asp:ListBox ID="lbComplaints" runat="server" ClientIDMode="Static" SelectionMode="Multiple" placeholder="Select Complaints" Style="width: 280px;" AppendDataBoundItems="True"> 它不会显示任何错误,但项目仍保留在以前的选择中 我试过了 $("

我有一个列表框,我想在不刷新页面的情况下通过jQuery清除它

<asp:ListBox ID="lbComplaints" runat="server" 
ClientIDMode="Static" SelectionMode="Multiple" 
placeholder="Select Complaints" Style="width: 280px;" AppendDataBoundItems="True">
它不会显示任何错误,但项目仍保留在以前的选择中

我试过了

 $("#lbComplaints").empty();
但是列表框的所有数据都被删除了,但我不想删除选项,而是取消选择列表框值中的上一个选项,以便用户可以再次选择。我该怎么做

顺便说一下,我以前

$('#lbComplaints').select2({
        placeholder: 'select a state',
        //tags: "true",
        //allowClear: true,
        theme: "classic"
    });

您可以尝试以下方法重置它:

 $("#lbComplaints option:selected").removeAttr("selected");
取消选择

$("#lbComplaints").find("option").attr("selected", false);
您正在使用select2.js。 修改javascript,如下所示

var $listX = $('#lbComplaints').select2({
        placeholder: 'select a state',
        //tags: "true",
        //allowClear: true,
        theme: "classic"
    });

    $('input[type="submit"]').click(function (e) {
            e.preventDefault(); 
           $listX.val(null);
    )};
请参阅此处的文档

但在

由于我使用的是select2,jQuery无法清除所选项目,因此使用select2
$('#lbc')。select2('data',null)

此操作非常有效

清空了第二个按钮单击后无法看到的所有选项。现在它可以工作了。但是在中找到了类似的答案,谢谢@Manjoor,正确答案可能是$(“#lbComplaints”)。选择2('data',null);很高兴知道你把它整理好了。你能检查一下元素并给出屏幕上呈现的实际标记吗?'10132--10132 11438--14928 12345--123 14447--14447 14810--14810'也检查一下脚本的执行顺序。$('lbs')。选择2('data',null);和我一起工作。由于我使用的是plugin select2,所以我无法清除列表框,因此我在上面尝试了,您使用的是select2.js。请参阅文档以执行所需的changeshttps://select2.github.io/examples.html#programmatic-控制任何人可以帮我选择2吗?由于选择2,jQuery无法清除
var $listX = $('#lbComplaints').select2({
        placeholder: 'select a state',
        //tags: "true",
        //allowClear: true,
        theme: "classic"
    });

    $('input[type="submit"]').click(function (e) {
            e.preventDefault(); 
           $listX.val(null);
    )};