zoukankan      html  css  js  c++  java
  • 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].tagName.toLowerCase();  
                            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)  
  • 相关阅读:
    sed 删除最后几行 和删除指定行 awk使用
    nagios监控
    nginx服务启动脚本
    Linux修改环境变量的4种方法
    源码编译apache报错的解决方法
    apache源码安装及启动脚本添加
    haproxy配置
    awk命令2
    awk命令1
    通配符及变量
  • 原文地址:https://www.cnblogs.com/cutone/p/7126094.html
Copyright © 2011-2022 走看看