【发布时间】:2017-12-09 03:03:39
【问题描述】:
我有一个包含 2 个输入、一个下拉菜单和一个文本输入的表单。我想使用下拉列表作为键和文本输入作为值来附加一个空数组和每个值。
此外,我有未知数量的这些键/值:选择/输入组合,下面的示例包含 2。
<div id="referenceList">
<!-- Pair #1 -->
<label>1) 'Reference value 1'</label>
<select class="form-control form-list input_importData predictionType" id="input_importData_referenceTypeMap-0">
<option value="" disabled="">Select a Reference Type</option>
<option value="Dry Matter">Dry Matter</option>
<option value="Brix">Brix</option>
<option value="Total Acid">Total Acid</option>
<option value="Firmness">Firmness</option>
</select>
<input type="number" class="form-control form-list input_importData" id="input_importData_referenceValue-0">
<!-- Pair #2 -->
<label>2) 'Reference value 2'</label>
<select class="form-control form-list input_importData predictionType" id="input_importData_referenceTypeMap-1">
<option value="" disabled="">Select a Reference Type</option>
<option value="Dry Matter">Dry Matter</option>
<option value="Brix">Brix</option>
<option value="Total Acid">Total Acid</option>
<option value="Firmness">Firmness</option>
</select>
<input type="number" class="form-control form-list input_importData" id="input_importData_referenceValue-1">
</div>
这是我尝试执行此操作的代码示例:
var referenceArray = {};
$('#referenceList select, #referenceList input').each(function(key, value) {
referenceArray[this.value] = this.value;
});
这是输出referenceArray的结果:
{{"Reference value 1":13.644132614135742,"Reference value 2":16.426380157470703}: "{"Reference value 1":13.644132614135742,"Reference value 2":16.426380157470703}", Brix: "Brix", 13.644132614135742: "13.644132614135742", Dry Matter: "Dry Matter", 16.426380157470703: "16.426380157470703", …}
显然不能像预期的那样正常运行
{"Brix":13.64434534, "Dry Matter": 15.343483423}
不确定我是否通过为每个选择/输入组合使用唯一 ID 来错误地执行此操作,或者是否应该将它们命名为相同以便更好地迭代?
谢谢!
【问题讨论】:
-
它是根据我的 Chrome 控制台执行的。
{{"Reference value 1":13.644132614135742,"Reference value 2":16.426380157470703}: "{"Reference value 1":13.644132614135742,"Reference value 2":16.426380157470703}", Brix: "Brix", 13.644132614135742: "13.644132614135742", Dry Matter: "Dry Matter", 16.426380157470703: "16.426380157470703", …} -
这是一个字符串:
JSON.stringify(referenceArray) "{"{\"Reference value 1\":13.644132614135742,\"Reference value 2\":16.426380157470703}":"{\"Reference value 1\":13.644132614135742,\"Reference value 2\":16.426380157470703}","Brix":"Brix","13.644132614135742":"13.644132614135742","Dry Matter":"Dry Matter","16.426380157470703":"16.426380157470703","Select a Reference Type":"Select a Reference Type"}"
标签: javascript jquery arrays keyvaluepair