gpt4 book ai didi

javascript - 从 JSON 数据填充复选框

转载 作者:行者123 更新时间:2023-11-28 07:39:35 24 4
gpt4 key购买 nike

我在尝试使用来自 JSON 对象的表单重新填充时遇到问题。我已经使用 JSON.stringify(name) 和值,它返回我认为可能有效的数据格式类型。但似乎无法进入 $.each 方法

 function fetchOrderFromLocalStorage() {
PROCESS_SAVE = true;

var mcs = localStorage.getItem(REPORTS_KEY);
console.log(mcs);

var jsn = JSON.parse(mcs);
console.log(jsn);

if (mcs.length == 0) {
return false;
}
$.each(jsn, function (name, val) {
var $el = $("input[name='" + name + "']"),
type = $el.attr('type');

console.log(JSON.stringify(name) + ":" + JSON.stringify(val));

switch (type) {
case 'checkbox':
$el.attr('checked', 'checked');
break;
case 'radio':
$el.filter('[value="' + val + '"]').attr('checked', 'checked');
break;
default:
$el.val(val);
}
});
//console.log(jsn);
//for (var i = 0; i < jsn.length; i++) {
// var formInput = jsn[i];
// $("form input[name='" + formInput.name + "']").val(formInput.value);
//}
}

底部注释掉的代码可以工作,但我也想填充复选框,因此我尝试了这里的一些代码,这些代码已被检查可以工作。所以我正在尝试,但我的数据格式不正确。我想我想要 JSON.Stringify() 作为 sonsole 根据 jQuery 文档给我正确的结果。

Console result

最佳答案

试试这个

function fetchOrderFromLocalStorage() {
PROCESS_SAVE = true;

var mcs = localStorage.getItem(REPORTS_KEY);
console.log(mcs);

var jsn = JSON.parse(mcs);
console.log(jsn);

if (mcs.length == 0) {
return false;
}


for (var i = 0; i < jsn.length; i++) {
var formInput = jsn[i],
$el = $("input[name='" + formInput.name + "']"),
type = $el.attr('type');

switch (type) {
case 'checkbox':
$el.attr('checked', 'checked');
break;
case 'radio':
$el.filter('[value="'+formInput.value+'"]').attr('checked', 'checked');
break;
default:
$el.val(formInput.value);
}
}
}

关于javascript - 从 JSON 数据填充复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28214844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com