我有一个Bootstrap模式,显示一个大型(30多个输入)。
我编写了以下代码来填充JSON中的前几个字段。
$('#seg-detail-modal').on('shown.bs.modal', function (e) {
var modal = $(this);
$.get( "includes/segdata.json", function( data ) {
$('#seg-detail-modal').find("input[name='segCode']").val(data.segCode);
$('#seg-detail-modal').find("input[name='orgName']").val(data.orgName);
$('#seg-detail-modal').find("input[name='referenceId']").val(data.referenceId);
});
});
是否有一种更有效的方式来填充大型表格而不是我在这里做的?
答案 0 :(得分:2)
您可以遍历对象属性并将选择器匹配到该循环中的属性。
类似的东西:
$('#seg-detail-modal').on('shown.bs.modal', function(e) {
var $inputs = $(this).find(':input');
$.getJSON("includes/segdata.json", function(data) {
$.each(data, function(key, val) {
$inputs.filter('[name="' + key + '"]').val(val);
});
});
});
如果存在没有匹配的属性,则选择器将只是静默失败