从这多个input当中获取到我需要的值。
name名称都是唯一值,那你根据你的参数用字符串拼接出name名称就好了
你题目的解答代码如下:
var arr = [
{name:"module[0][0][name]",value:"11"},
{name:"module[0][0][type]",value:"aa"},
{name:"module[0][1][name]",value:"22"},
{name:"module[0][1][type]",value:"bb"},
{name:"module[0][2][name]",value:"33"},
{name:"module[0][2][type]",value:"cc"}
];
var x=0, y=1, key="type";
var str = `module[${x}][${y}][${key}]`;
var value = arr.filter(x=>x.name==str)[0].value;
console.log(value);
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
那就看看有没有办法让你要获取的值有标签可以筛选,想办法在查找前可以过滤掉一定量的name,或者改成使用有顺序的id形式,然后获取的时候就可以二分查找了
没有 id 或者唯一标识 那不太好,筛选 。你可以自己 循环 加上一个 id。id要是唯一值
name是唯一的,但是你不知道到底哪个name对应哪个控件,对你来说它们就是一大堆随机字符串,所以唯一不唯一根本不重要,你不要再老强调它是唯一的,那对你没有任何用处
document.querySelector("input[name='module[0][0][name]']").value;