这有效(填充生成的下拉菜单):
$('dropdown_options').innerHTML = ' ';
jsonResponse.forEach(function(element){
$('dropdown_options').innerHTML += '<option value='+ element.size + '>' element.size + '</option>';
});
但是
element.size
是数字,我需要字母。因此,我做了以下功能:getLetterOfSizeNumber: function(number) {
var size_letter = null;
switch (number) {
case 44:
size_letter = 'XS';
break;
case 45:
size_letter = 'S';
break;
case 46:
size_letter = 'M';
break;
case 47:
size_letter = 'L';
break;
case 48:
size_letter = 'XL';
break;
case 49:
size_letter = 'XXL';
break;
default:
break;
}
return size_letter;
}
然后像这样:
jsonResponse.forEach(function(element){
$('dropdown_options').innerHTML += '<option value='+ element.size + '>' + myObject.getLetterOfSizeNumber(element.size) + '</option>';
然后我的下拉列表中填充了
null
。建议? 最佳答案
改用地图
var numberToSize = {
44: 'XS',
45: 'S',
46: 'M',
47: 'L',
48: 'XL',
49: 'XXL'
};
// (or just remove the function altogether)
getLetterOfSizeNumber: function(number) {
return numberToSize[number];
};
这将适用于数字和字符串
number
值,因为它们用于访问属性值。关于javascript - 从开关盒返回值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20349009/