在我的代码中,我有一个JSON序列化字典,如下所示:
{ BackgroundColor="F4F4F4", ShowTitle=true, NumberToShow=10}
我需要设置匹配表单字段的值(使用属性键)。
以下是我目前的做法:
function applyPreset(preset) {
for (var prop in preset) {
var $container = $("div#attribute-" + prop);
$("input", $container).val(preset[prop]);
}
}
这适用于文本框,但显然不适用于单选复选框或选择列表。
我想知道jQuery中是否有任何聪明的函数可以执行此操作,还是应该遍历每个输入,检查它的类型并相应地设置值?
答案 0 :(得分:3)
请试试这个:
$(":radio", $container).attr('checked',preset[prop]);
$("select", $container).val(preset[prop]).change();
表示复选框
$(':checkbox').attr('checked', true);
或强>
$(':checkbox').prop('checked', true);
应该有效。