在javascript中使用子字符串收集数组中的值
我有一个字段中的数据,如下所示:在javascript中使用子字符串收集数组中的值,javascript,html,Javascript,Html,我有一个字段中的数据,如下所示: 40-818-938 | COUPLING, 25MM, PVC BLACK | PCS, MTR, BUNDLE | 3 第一块是项目代码,第二块是项目描述,第三块是单位,它们是动态的,第四块是单位数量。块之间用| 我想循环第三个块(单位),将它们放入不带逗号和空格的单独变量中,并使用它们填充选择列表 请帮助我实现这一目标。下面是根据单元数(第四个块)将第三个块添加到选择列表中的代码,我需要将它们分开 for (var i = 0; i < arrDa
40-818-938 | COUPLING, 25MM, PVC BLACK | PCS, MTR, BUNDLE | 3
第一块是项目代码,第二块是项目描述,第三块是单位,它们是动态的,第四块是单位数量。块之间用|
我想循环第三个块(单位),将它们放入不带逗号和空格的单独变量中,并使用它们填充选择列表
请帮助我实现这一目标。下面是根据单元数(第四个块)将第三个块添加到选择列表中的代码,我需要将它们分开
for (var i = 0; i < arrData[3]; i++) {
var x = document.createElement("OPTION");
x.setAttribute("value", arrData[2]);
var t = document.createTextNode(arrData[2]);
x.appendChild(t);
input.appendChild(x);
}
for(变量i=0;i
提前谢谢。你可以这样做
Var items = obj.split("|");
Var units = items[2].split(",");
var string1 = yourstring.split('|');
var array = string1[2] .split(',');
构建一个选择:
array.forEach(function(entry) {
var x = document.createElement("OPTION");
x.setAttribute("value", entry);
var t = document.createTextNode(entry);
x.appendChild(t);
input.appendChild(x);
});
您需要使用java脚本的split函数。前
var newstring=string.split('|');
var laststring=newstring[2].split(",");// new string
var yourneed=laststring[1];
由于您已经将原始字符串拆分为一个数组,因此还需要拆分该数组的第二个元素:
arrData[2] = arrData[2].split(',');
然后,在循环内部,您需要像这样引用它:
x.setAttribute("value", arrData[2][i]);
var t = document.createTextNode(arrData[2][i]);
如果还想删除空格,可以将其添加到要拆分的图案中:
var data = '40-818-938 | COUPLING, 25MM, PVC BLACK | PCS, MTR, BUNDLE | 3';
var units = data.split(/\s*\|\s*/g)[2]; // "PCS, MTR, BUNDLE"
console.log(units.split(/\s*,\s*/)[1]); // "MTR"
制作选项元素的最简单方法是使用:
你试过什么吗?“40-818-938 |联轴器,25毫米,PVC黑色|件,地铁,捆绑| 3”。拆分(“|”)2。拆分(“,”)
var unit = units.split(/\s*,\s*/)[1];
var x = new Option(unit, unit);
input.appendChild(x);