我通过对它(它们)进行字符串化并使用localStorage来保存JSON数据。我将数据重新创建为对象,并尝试将对象转换为可以填充HTML表单的值,但未成功。以下jQuery代码段迭代我存储的值,并在控制台中准确输出我想要的内容:
$(document).ready(function(){
var test01stuff = $.parseJSON(localStorage.getItem("test01Info"));
$.each(test01stuff, function(i,item){
$.each(item, function(name,value){
console.log(name + ":" + value);
$( "id[name|='" + name + "']" ).val( value );
});
});
});
这绝对适用于像这样的对象:
{
"test01Info": [
{
"test01_Num": "4",
"test01_Length": "387",
"test01_Depth": "23"
}
]
}
例如,test01_Length:387
之类的名称/值对在控制台中正常,我的所有其他存储值也是如此。但是尝试在下一行中使用jQuery的属性前缀选择器来填充我的HTML基本内容:
<form id='test01form'>
<input type='number' name='testy' id='test01_Length' min='0' max='999' data-role='none'>
</form>
每次都失败 - 输入保持空白,但控制台中没有抛出任何错误。我在这里缺少什么?
答案 0 :(得分:1)
$( "id[name|='" + name + "']" ).val( value );
当我需要时:
$( "[id|='" + name + "']" ).val( value );