我不知道我的问题的标题是什么,我认为它是如此复杂。所以,我有一个数组:

["87080207", "87101133", "91140156"]


和B数组:

 ["97150575", "97150575", "90141063"]


我将这个B数组放在html select值上。它们中的每一个(A和B数组)都相关。选择值87080207,87101133(B数组)时,需要显示97150575(A数组)。
我已经尝试过了,但是没有用,这是我的代码:

var a=[];
var b=[];
var arrayLength = dataComponentValuation.length;
for (var i = 0; i < arrayLength; i++) {
   a.push(dataComponentValuation[i].valuated);
   b.push(dataComponentValuation[i].valuator);
}
var ajoin = a.join();
var bjoin = b.join();
$('#valuatedEmpCompId_before').val(ajoin);
$('#valuator_before').val(bjoin);


select中,我放了一个函数,就是这样:

function emptyValuated() {
    var valby = $("#valBy").val(); //chosen value from select
    var b_valby = $("#valuator_before").val();

    var b_valuated = $("#valuatedEmpCompId_before").val();
    if(b_valby != ''){
        if(valby != b_valby)
        {
            $("#valuatedEmpCompId").val('');
        }
        else{
             $("#valuatedEmpCompId").val(b_valuated);
        }

    }
    else{

        $("#valuator_before").val(valby);
        $("#valuatedEmpCompId").val(b_valuated);
    }
}


请帮帮我...

最佳答案

如建议的那样,您可以使用一个对象作为对数组A的值的引用。



var arrayA = ["87080207", "87101133", "91140156"],
    arrayB = ["97150575", "97150575", "90141063"],
    object = Object.create(null);

arrayB.forEach(function (b, i) {
    object[b] = object[b] || [];
    object[b].push(arrayA[i]);
});

console.log(object);

关于javascript - 如何在Javascript中基于另一个数组获取多个数组值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37720429/

10-09 19:43
查看更多