jQuery如何将一些json记录加载到表单字段中?

Pat*_*cow 6 forms jquery json load get

我有一个json文件:

 {
    "data": "Click",
    "size": "Here"    }
Run Code Online (Sandbox Code Playgroud)

和表格:

<form>
First name: <input type="text" name="firstname" /><br />
Last name: <input type="text" name="lastname" />
</form> 
Run Code Online (Sandbox Code Playgroud)

我想知道将多个json记录加载到多个表单元素中的正确sintax是什么?类似于您想要修改的表单,并将值排列到这些字段中

我知道我可以使用:

$getJSON('link_to_json_file' function() {

});
Run Code Online (Sandbox Code Playgroud)

但我被困在这里谢谢

Wil*_*yle 12

或者,如果您的数据返回是fieldname值对,例如:

{"firstname" : "John", "lastname" : "Doe"}
Run Code Online (Sandbox Code Playgroud)

你可以这样做:

$.getJSON('url_to_file', function(data) {
    for (var i in data) {
        $('input[name="'+i+'"]').val(data[i]);
    }
});
Run Code Online (Sandbox Code Playgroud)

  • 为什么会更好?基准测试我已经看到显示遍历本机for循环更快,特别是对于大对象. (5认同)
  • `$ .each(data,function(key,val){});`而不是`for`会更好 (3认同)
  • 虽然 OP 的示例使用输入,但应注意提供的代码不会命中 textareas。我会将其更改为 `$('.form-class *[name="'+i+'"]').val(data[i]);` - 其中 `.form-class` 是您所在的表单想要瞄准。 (2认同)