🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
> 留言板很常用作自定义表单功能,即可以在前台让用户提交信息给后台。 获取自定义字段内容,前台显示 ``` #html模板代码,用户填充后台的自定义字段内容 <span id="ext_fields"></span> #JS代码 tid:指栏目ID,你可以传入当前栏目,也可以传入其他栏目,栏目ID跟自定义字段绑定的内容相关,如果你自定义的这个字段在特定栏目显示,那么这个字段就起到效果了 id:当前表单ID,如果是前台,那么这个表单还没有创建,那么就是ID为0,如果是你要查看某条留言信息,那么这条留言就有对应的ID molds:这个是模块标识,意思是指明对应模块的自定义字段,这个是留言模块,那么就是message function get_fields(tid,id){ var id = arguments[1]?arguments[1]:0; $.post("{fun U('Common/get_fields')}",{molds:'message',tid:tid,id:id},function(r){ var res = JSON.parse(r); console.log(res); if(res.code==0){ //默认 res.tpl输出的是layui的模板HTML,可以审核元素查看res里面的内容 //$("#ext_fields").html(res.tpl); var html = ''; var len = res.fields_list.length; if(len>0){ //根据对应的字段,进行HTML设计 for(var i=0;i<len;i++){ if(res.fields_list[i].field=='email'){ html+='<div class="form-group"><label>您的邮箱</label><input name="email" id="email" class="form-control" type="email"></div>'; } } } //将内容放到前台HTML预留填充地方 $("#ext_fields").html(html); } }); } ``` 接口返回的数据`res`说明: `res.code`0表示成功返回,1表示有错误信息 `res.tpl`输出的是layui的模板HTML,可以审核元素查看res里面的内容 `res.fields_list`获取的自定义字段列表(json数组) ``` [{ body:null,//默认null,如果是单选多选则有内容 data:"",//字段的内容,如果是查看留言,则有内容 field:"email",//自定义字段 fieldlong:"255",//字段长度 fieldname:"邮箱",//字段名称 fieldtype:"1",//字段类型,参考后台自定义字段checkbox的值 format:"",//是否格式化 id:"30",//fields表中email的ID islist:"1"//是否后台列表显示 ismust:"0"//是否必须 issearch:"1"//是否后台添加搜索 isshow:"1"//是否前台启用 molds:"message"//字段归属的模型,message orders:"0"//字段排序 tids:",1,6,7,8,9,2,10,11,12,13,3,4,5,"//字段绑定的栏目ID tips:""//字段提示内容 }] ```