将josn对象赋值给form
Posted zhangqian1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将josn对象赋值给form相关的知识,希望对你有一定的参考价值。
记录一下自己用过的方法
$.fn.setForm = function(jsonValue) {
var obj = this;
$.each(jsonValue, function(name, ival) {
var $oinput = obj.find("input[name=" + name + "]");
var $oselect = obj.find("select[name=" + name + "]")
if ($oinput.attr("type") == "radio" || $oinput.attr("type") == "checkbox") {
$oinput.each(function() {
//console.log(Object.prototype.toString.apply(ival),‘++++++++++++++++‘)
if (Object.prototype.toString.apply(ival) == ‘[object Array]‘) { //是复选框,并且是数组
for (var i = 0; i < ival.length; i++) {
if ($(this).val() == ival[i]){ //或者文本相等
$(this).prop("checked", true);
}
}
}else {
if ($(this).val() == ival){
$(this).prop("checked", true);
}
}
});
}else if($oselect.attr("name") !== undefined){
$oselect.each(function(i) {
for (j = 0; j < $oselect[i].options.length; j++) {
if ($oselect[i].options[j].text == ival) { // 选项值与变量相同
$oselect[i].options[j].selected =true;
}
}
})
}else if ($oinput.attr("type") == "textarea") {
obj.find("[name=" + name + "]").html(ival);
} else {
obj.find("[name=" + name + "]").val(ival);
}
})
};
以上是关于将josn对象赋值给form的主要内容,如果未能解决你的问题,请参考以下文章