Multi Select Array base index find

Multi Select Array base index find

by Khadeer Mohammed

HTML

<input id="searchSrc" />
<div data-id="virtualList" id="sourceList">
<select class="listbox" multiple>
</select>
</div>

JavaScript

var srcArr = [
{table_name: "\" EMP100\"", table_id: "23200", table_owner: "QASRC1", checked: false},
{table_name: "\" EMP1001\"", table_id: "23201", table_owner: "QASRC1", checked: false},
{table_name: "\"$AMPLE\"", table_id: "25411", table_owner: "QASRC1", checked: false},
{table_name: "\"$AMPLE_20200715\"", table_id: "25412", table_owner: "QASRC1", checked: false},
{table_name: "\"$SANTHU$\"", table_id: "25413", table_owner: "QASRC1", checked: false},
{table_name: "\"$SANTHU1$\"", table_id: "25414", table_owner: "QASRC1", checked: false},
{table_name: "\"$SANTHU123$\"", table_id: "25415", table_owner: "QASRC1", checked: false},
{table_name: "\"$SANTOSH£_TEMP$\"", table_id: "25416", table_owner: "QASRC1", checked: false},
{table_name: "\"$SANTOSH£_TMP$\"", table_id: "25417", table_owner: "QASRC1", checked: false},
{table_name: "\"$TABLE01SPCL\"", table_id: "25419", table_owner: "QASRC1", checked: false},
{table_name: "\"$TABLESPCL\"", table_id: "25420", table_owner: "QASRC1", checked: false}
]
var searchSrcArr=[];
var options = srcArr.map((option, i) => `<option data-id="${i}" value='${option.table_id}'>${option.table_name}</option>`)
$("select").html(options);
console.log(options);
var selectedIndex = [];

$(document).on("change", ".listbox", function(e){
	debugger
    	var arr = [];
    	var dataId = $(this).closest("[data-id=virtualList]").attr("id");
    	var searchSrcVal = $("#searchSrc").val();
    	var searchTgtVal = $("#searchTgt").val();
    	if(dataId == "sourceList"){
    		arr = searchSrcVal === "" ? (arr = srcArr) : (arr = searchSrcArr);
    	} else {
    		arr = searchTgtVal === "" ? (arr = tgtArr) : (arr = searchTgtArr);
    	}
        var selected = $("#"+dataId+ " select").find("option:selected");
        if(selected.length === 1){
        	var index = $(selected).attr("data-id");
          for(var i=0; i<arr.length; i++){
          	arr[i].checked = false;
          }
          arr[index].checked = true;
          selectedIndex = [];
         ...