TP5 layui 储存type分类ID,记录显示中显示对应的中文名称
方法一、layui数据表格+TP5
{field:"school",title: "学校", width:120,templet: "<div>{{sotitle(d.hezuodanwei,arr)}}</div>"}
函数:sotitle(d.hezuodanwei,arr),arr=数组
原理:
注意:函数sotitle()一定要放在layui.use(外面
数组:
//var arr=[{"id":8,"name":"北京理工大学"},{"id":9,"name":"南开大学"}
var arr={$guishu};//取自后台的数据 数组
TP5 php代码:
//归属 列出归属数组 格式[{"id":8,"name":"北京理工大学"},{"id":9,"name":"南开大学"}]
$rs_manage=Db::name("manage")->select();
$i=0;
foreach($rs_manage as $rs){
$guishu[$i]["id"] = $rs["id"];
$guishu[$i]["name"] = $rs["username"];
$i++;
}
$this->assign("guishu",json_encode($guishu));注意:$this->assign("guishu",json_encode($guishu));
方法二、layui数据表格+TP5
这种方法非常消耗资源,速度很慢,如果读取多个不建议
归属、合作单位 都有对应的表,实现显示对应的中文名称
用layui templet - 自定义模板
html代码:
归属:,{field:"guishu", title: "归属",width:120,templet: "#adminIdTpl_guishu"}
adminIdTpl_guishu模板代码:
<!-- 归属 模板 -->
<script type="text/html" id="adminIdTpl_guishu">
{{# var fn = function(){
$.ajaxSetup({ async: false });
var title;
var id=d.guishu;
var datatablename="manage";
var dname="username";
$.post("{:url("student/schooltableSo")}",{id:id,datatablename:datatablename,dname:dname}, function(data){
title=data;
});
return title;
}; if(true){ }}
{{ fn() }}
{{# } }}
</script>TP5代码:前端传参数过来,后台查询,然后把结果返回前端
//通用功能 通过ID查询返回结果
public function schooltableSo()
{
$id=input("id");
$datatablename=input("datatablename");//对应表名称
$dname=input("dname");//要取得表中内容的字段名称
if($id && $datatablename){
$rs=Db::name($datatablename)->where("id",$id)->find();
return $rs[$dname];
}else{
return "";
}
}方法三、其它办法
$res = $r1->select();
foreach($res as $v){
$res2 = $r2->where("pid=".$v["id"])->select();
$v["child"] = $res2;
}
<foreach name="res" item="v">
<div id="div1">
{$v.name}
<if condition="$v["child"] neq """>
<foreach name="v["child"]" item="v2">
<div id="div2">
{$v2.number}
</div>
</foreach>
</if>
</div>
</foreach>
引用:http://bbs.csdn.net/topics/392029744
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: TP5 模板如何引用共同文件
- 下一篇: MySQL LIKE 用法:搜索匹配字段中的指定内容
