js---将后端返回数据填充到表单

/**

* 利用layui框架和后端返回数据初始化表单

* @param result  后端返回的JSON数据

*/

function init(result) {

    layui.use(['table', 'layer', 'element', 'form', 'upload', 'laypage', 'laydate', 'colorpicker'], function () {

        $form =layui.form;

        loadData(JSON.stringify(result.data));

        $form.render();

    });

}

/**

* 将后端返回数据填充到表单

* @param jsonStr  JSON格式数据

*/

function loadData(jsonStr){

    var obj =eval("("+jsonStr+")");

    var key,jsonValue,tagName,type,arr;

    for(x in obj){

        key =x;

        jsonValue = obj[x];

        $("[name='"+key+"']").each(function(){

            tagName =$(this)[0].tagName;

            type =$(this).attr('type');

            if(tagName==='INPUT'){

                if(type==='radio'){

                    $('#formId input[name="'+this.name+'"][value="'+jsonValue+'"]').iCheck('check');

                }else if(type==='checkbox'){

                    arr = jsonValue.split(',');

                    for(var i =0;i<arr.length;i++){

                        if($(this).val()==arr[i]){

                            $(this).iCheck('check');

                            break;

                        }

                    }

                }else{

                    $(this).val(jsonValue);

                }

        }else if(tagName==='TEXTAREA'){

            $(this).val(jsonValue);

        }else if (tagName==='SELECT') {

            $('select[name = "'+key+'"]').val(jsonValue);

        }else if (tagName==='DIV') {

            if (jsonValue) {

                    $('div[name = "'+key+'"]').val(jsonValue);

        }

    }

});

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容