ThinkPHP中引入iDialog插件来实现查看全文功能
2018-03-07 15:44
309 查看
1.将iDialog核心包复制到项目中:
2.引入2个JS文件,并修改目录地址:
<script src="__COMMON__/iDialog/jquery-1.8.3.min.js"></script>
<script src="__COMMON__/iDialog/jquery.iDialog.js" dialog-theme="default"></script>3.实现功能:点击不同的查看全文按钮,能够看到不同的内容。
思路:在每个查看全文的按钮上,增加点击事件,来调用不同的对话框
代码如下:
<script type="text/javascript">
function show(title,content){
iDialog({
title: title,
//标志出唯一的对话框,如果当前页面存在多个对话框时,需要注释该参数
//id:'DemoDialog ',
content:content,
lock: true, //遮蔽效果的配置项
width:800, // 对话框的宽
fixed: true,
height:400 // 对话框的高
});
代码如下:
function show(id){
//调用post方法,访问后台
var url ="{:U('getDoc')}";
var data={'id':id};
$.post(url,data,function(msg){
//alert(msg);
iDialog({
title: msg.doc_title,
//标志出唯一的对话框,如果当前页面存在多个对话框时,需要注释该参数
//id:'DemoDialog ',
content:msg.doc_content,
lock: true, //遮蔽效果的配置项
width:800, // 对话框的宽
fixed: true,
height:400 // 对话框的高
});
},'json');
②编写后台程序,接收id,并根据id获取标题和内容,return给前台
前台的对话框显示内容如下图,需要在Doc/getDoc方法中,将内容进行解码。
解码操作如下:function getDoc(){
//接收ajax传过来的id
$id= I('post.id');
//2.根据id查询公文信息
$info = D('Doc')->field('doc_id,doc_title,doc_content')->find($id);
//将doc_centent字段中的内容解码
$info['doc_content'] = htmlspecialchars_decode($info['doc_content']);
//3.将$info数组转为json数据并返回
echo json_encode($info); 全部操作结束。
总结:1.为每个"查看全文"按钮,增加点击事件,触发一个show函数。
2.引入2个JS文件,并修改目录地址:
<script src="__COMMON__/iDialog/jquery-1.8.3.min.js"></script>
<script src="__COMMON__/iDialog/jquery.iDialog.js" dialog-theme="default"></script>3.实现功能:点击不同的查看全文按钮,能够看到不同的内容。
思路:在每个查看全文的按钮上,增加点击事件,来调用不同的对话框
代码如下:
<script type="text/javascript">
function show(title,content){
iDialog({
title: title,
//标志出唯一的对话框,如果当前页面存在多个对话框时,需要注释该参数
//id:'DemoDialog ',
content:content,
lock: true, //遮蔽效果的配置项
width:800, // 对话框的宽
fixed: true,
height:400 // 对话框的高
});
方式二:采用ajax方式,通过php从后台根据id读取数据,显示在对话框上
①:使用ajax方法访问后台php程序,并且将id传入后台程序代码如下:
function show(id){
//调用post方法,访问后台
var url ="{:U('getDoc')}";
var data={'id':id};
$.post(url,data,function(msg){
//alert(msg);
iDialog({
title: msg.doc_title,
//标志出唯一的对话框,如果当前页面存在多个对话框时,需要注释该参数
//id:'DemoDialog ',
content:msg.doc_content,
lock: true, //遮蔽效果的配置项
width:800, // 对话框的宽
fixed: true,
height:400 // 对话框的高
});
},'json');
②编写后台程序,接收id,并根据id获取标题和内容,return给前台
前台的对话框显示内容如下图,需要在Doc/getDoc方法中,将内容进行解码。
解码操作如下:function getDoc(){
//接收ajax传过来的id
$id= I('post.id');
//2.根据id查询公文信息
$info = D('Doc')->field('doc_id,doc_title,doc_content')->find($id);
//将doc_centent字段中的内容解码
$info['doc_content'] = htmlspecialchars_decode($info['doc_content']);
//3.将$info数组转为json数据并返回
echo json_encode($info); 全部操作结束。
总结:1.为每个"查看全文"按钮,增加点击事件,触发一个show函数。
2.show函数访问后台php程序(Doc/getDoc),并将当前的要查看的id传递到后台。
3.编写Doc/getDoc方法:①先接收id,根据id查询要查看的标题和内容,并将内容解码,最后以json数据格式输出
4.在前台的show函数中,接收getDoc返回的结果,使用弹出对话框的方法,将接收的json数据显示到对话框上。
相关文章推荐
- 基于jQuery实现的查看全文功能【实用】
- ThinkPHP3.2 使用 PHPExce插件 实现 数据导出 功能
- USTCOJ代码查看功能的实现(我的第一个Chrome插件,UstcOjSourceView)
- 用html5页面引入了一个jquery插件,实现平板上的向上滑动加载更多的功能
- thinkPHP5 使用laypage分页插件实现列表分页功能
- 基于jQuery实现的查看全文功能【实用】
- thinkPHP5使用laypage分页插件实现列表分页功能
- 调用百度地图Api实现的查看地图功能的小插件
- thinkphp jq 实现列表查看更多功能
- jQuery实现点击小图查看大图功能
- thinkphp实现定位功能
- 火力全开——仿造Baidu简单实现基于Lucene.net的全文检索的功能
- (分享)在myeclipse上安装spket插件,实现js自动提醒功能
- Yii安装EClientScript插件扩展实现css,js文件代码压缩合并加载功能
- JQuery fileupload插件实现文件上传功能
- 基于google插件Kaptcha实现图片验证码功能
- Mybatis无需更改原有代码1分钟完美实现分页功能插件(不服你咬我)
- vue实现个人信息查看和密码修改功能
- AngularJS自定义插件实现网站用户引导功能示例
- 使用jquery插件实现打印指定区域功能