我不知道为什么这个json不会迭代...
我有
HTML
<input type="hidden" value="[{"drop":54,"colour":532,"chosen":830}]" name="HiddenOpenerJson" id="HiddenOpenerJson">
jquery的:
$('#OpenerDirectionVal').change(function () {
var selected = this.value;
var dataArray = $("#HiddenOpenerJson").val();
$(jQuery.parseJSON(JSON.stringify(dataArray))).each(function () {
var drop = this.drop;
var colour = this.colour;
var chosen = this.chosen;
if (chosen == selected) {
$("select[data-hardwareid='" + drop + "']").val(colour);
}
});
});
答案 0 :(得分:1)
HTML代码不正确,因此输入中的值只会在第一个引号处被剪切,因此您只需"[{"
。
您需要对JSON进行HTML编码:
<input type="hidden" value="[{"drop":54,"colour":532,"chosen":830}]" name="HiddenOpenerJson" id="HiddenOpenerJson">
然后,当您想要将字符串解析为JSON时,您不希望将JSON编码为JSON,只需解析它:
$(jQuery.parseJSON(dataArray)).each(function () {