javascript的html输出错误
我写了一个脚本,用一堆选项填充一个选择框 最初,javascript的html输出错误,javascript,jquery,html,Javascript,Jquery,Html,我写了一个脚本,用一堆选项填充一个选择框 最初,数据采用字符串形式,格式为“key=value;key2=value2;etc.”: //拆分字符串以区分用于填充选择框的不同选项 var值=data.split(“;”); //重置要填充的选择框的长度 document.getElementById(子).options.length=0; //创建第一个默认选项 document.getElementById(child.options[0]=新选项('all','0'); 对于(变量i=0;
数据
采用字符串形式,格式为“key=value;key2=value2;etc.”:
//拆分字符串以区分用于填充选择框的不同选项
var值=data.split(“;”);
//重置要填充的选择框的长度
document.getElementById(子).options.length=0;
//创建第一个默认选项
document.getElementById(child.options[0]=新选项('all','0');
对于(变量i=0;i
上面的示例使用给定的html输出填充selectbox:
<option value="0">all</option>
<option value="
7">Bermuda</option>
<option value="10">British Virgin Islands</option>
<option value="15">Cayman Islands</option>
<option value="42">Jamaica</option>
<option value="74">St. Lucia</option>
<option value="79">Trinidad Tobago</option>
全部
百慕大群岛
英属维尔京群岛
开曼群岛
牙买加
圣卢西亚
特立尼多巴哥
如上所述,您可以注意到,selectbox中的第二个选项的字符串值已损坏。我需要修正这个值,因为蛋糕不能正确保存这个值
如果您有任何其他问题,请询问。您应该尝试调整值:
document.getElementById(child).options[i+1] = new Option(
options[1].replace(/^\s+|\s+$/g, ''),
options[0].replace(/^\s+|\s+$/g, '')
);
或者,如果您正在使用jquery:
document.getElementById(child).options[i+1] = new Option(
$.trim(options[1]),
$.trim(options[0])
);
此外,您还应仔细查看此片段:
values[i].replace(/\s+/g, '');
因为它可能做不到你想要的。首先,它删除字符串中的所有空格,这样“纽约市”将变成“纽约市”。接下来的事情是replace
方法返回新字符串,这样代码就不会生效。应该是:
values[i] = values[i].replace(/\s+/g, '');
为什么它被腐蚀了?这不是百慕大的值吗?@neo:行断了(
\n
)
values[i] = values[i].replace(/\s+/g, '');