json对象load到表单中,这样后台Ajax过来的数据就可以直接加载

废话不多说,直接上代码,javascript的。
    /**
     * 加载json的数据到页面的表单中,以name为唯一标示符加载
     * @param {String} jsonStr json表单数据
     */
    function loadJsonDataToForm(jsonStr){
        try{
            //var obj = eval("("+jsonStr+")");
            var obj = jsonStr;
            var key,value,tagName,type,arr;
            for(x in obj){
                key = x;
                value = obj[x];

                $("[name='"+key+"'],[name='"+key+"[]']").each(function(){
                    tagName = $(this)[0].tagName;
                    type = $(this).attr('type');
                    if(tagName=='INPUT'){
                        if(type=='radio'){
                            $(this).attr('checked',$(this).val()==value);
                        }else if(type=='checkbox'){
                            arr = value.split(',');
                            for(var i =0;i<arr.length;i++){
                                if($(this).val()==arr[i]){
                                    $(this).attr('checked',true);
                                    break;
                                }
                            }
                        }else{
                            $(this).val(value);
                        }
                    }else if(tagName=='SELECT' || tagName=='TEXTAREA'){
                        $(this).val(value);
                    }

                });
            }
        }catch(e){
            alert("加载表单:"+e.message+",数据内容"+JSON.stringify(jsonStr));
        }
    }

平时我就是Ajax到后台拿数据,拿完之后直接loadJsonDataToForm(obj),相当好用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值