我有2个列表框(项目使用jquery在它们之间移动)。假设item1已被选中。然后,如果我同时选择item1和item2和item3,则仅应该在第二个列表框中插入item2和3。
我没有从Listbox1中删除项目。我只需要检查Listbox2中是否存在所选项目之一。
//Code
$('#btnAdd').click(function () {
var selectedOptions = $('#<%=lstAllRole.ClientID %> option:selected');
if (selectedOptions.length == 0) {
alert("Please select option to move");
return false;
}
if (selectedOptions.length == 1) {
if ($("#<%=lstSelectedRole.ClientID %> option[value='" + selectedOptions.val() + "']").length > 0) {
}
else {
$('#<%=lstSelectedRole.ClientID %>').append($(selectedOptions).clone());
}
}
else if (selectedOptions.length > 1) { // Selecting more than one item to move--only append items which are not in 2nd listbox
// **I need to validate here**
}
});
最佳答案
只需运行一个foreach函数,您将找到项目。
//码
else if (selectedOptions.length > 1) {
$(selectedOptions).each(function () {
if ($("#<%=lstSelectedRole.ClientID %> option[value='" + this.value + "']").length > 0) {
// Do your stuff
} else {
$('#<%=lstSelectedRole.ClientID %>').append($(this).clone());
}
});
}