jquery将json对象赋值给form表单(function($){
$.fn.extend({
initForm:function(options){
//默认参数
var defaults = {
jsonValue:options,
isDebug:false//是否需要调试,这个⽤于开发阶段,发布阶段请将设置为false,默认为false,true将会把name value打印出来 }
//设置参数
var setting = defaults;
var form = this;
jsonValue = setting.jsonValue;
//如果传⼊的json字符串,将转为json对象
if($.type(setting.jsonValue) === "string"){
jsonValue = $.parseJSON(jsonValue);
}
//如果传⼊的json对象为空,则不做任何操作
if(!$.isEmptyObject(jsonValue)){
var debugInfo = "";
$.each(jsonValue,function(key,value){
//是否开启调试,开启将会把name value打印出来
if(setting.isDebug){
alert("name:"+key+"; value:"+value);
debugInfo += "name:"+key+"; value:"+value+" || ";
}
var formField = form.find("[name='"+key+"']");
if($.type(formField[0]) === "undefined"){
if(setting.isDebug){
alert("can not find name:["+key+"] in form"); //没到指定name的表单
}
} else {
var fieldTagName = formField[0].LowerCase();
if(fieldTagName == "input"){
if(formField.attr("type") == "radio"){
$("input:radio[name='"+key+"'][value='"+value+"']").attr("checked","checked");
} else {
formField.val(value);
}
} else if(fieldTagName == "select"){
//do something special
formField.val(value);
} else if(fieldTagName == "textarea"){
//do something special
formField.val(value);
} else {
formField.val(value);
}
}
})
if(setting.isDebug){
alert(debugInfo);
}
}
return form; //返回对象,提供链式操作
}
jquery获取下拉框选中值});
})(jQuery)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论