总目录

本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分逻辑实现一带而过,敬请谅解。

项目要求是在dtcms中增加一个电子资源管理,并且提供灵活的筛选方式。

由于涉及内容比较多,打算分4个部分来描述,内容页是我自己一点一点摸索出来的,在原有的基础上进行开发已经是第3次了,这一次对插件制作进一步理解深刻,同时通过不断的调试摸透了URL重写的规则。

本章目录

  • 后台列表页实现
  • 后台详情页实现

一、后台列表页实现

上一节我们新建项目的时候已经新建过一个admin/index.aspx页面了,也修改过相关对应的命名空间,下面我们就实现后台列表页的效果,最终效果如下图

1.后台服务器代码

首先是后台服务器代码,因为我们是复制的友情链接的代码,所以大部分代码是可以重用的,只要把对应的取数据库的地方修改一下即可,按照页面加载的顺序和功能的顺序,我们一个一个函数的修改

2.pageload函数

检查权限的地方,一定要记得修改成plugin.config里设置的后台菜单的name,否则设置的权限没有效果。

3.RptBind函数

这个函数是最主要的数据获取函数,这里获取数据库数据的代码我就不贴了,数据库访问我用的是newlife.xcoder,本系列不是一个入门教程,敬请谅解。

4. lbtnDelete_Click函数

这个函数也要注意修改权限的名字,删除的核心还是用的newlife.xcoder,是不是很简单的样子。

5.txtPageNum_TextChanged函数和GetPageSize函数

这两个函数的主要作用是设置一页显示多少条数据,主要是红框框起来的name要保持一致。

6. 下面是前台html代码的修改

  • 这里前台html涉及的内容比较多,比较细,可能会漏掉一些东西,首先是head部分,除了title其他都不用修改,这里就不截图了。
  • 导航栏,修改一下中文显示的文字即可
  • 工具栏这里是加了一个新增的按钮

7.前台列表绑定的修改

最重要的其实还是前台列表绑定的修改,用这样的关键词进行绑定

<%#Eval("PropertyNames")%>

至此后台的列表页就完成了,还有其他一些没能详述的地方各位自己再修改一下即可。

二、后台详情页实现

同第一个列表页,我们同样需要从别的地方复制一个页面过来,这里还是用友情链接的详情页,复制过来后修改一下命名空间。

1.详情页的pageload函数

详情页的pageload函数,和列表页差不多,注意权限的字段修改下,其他的按照自己的逻辑,编辑的话就要绑定数据,新增的话直接展示页面即可。

2.详情页的前端验证

详情页后端不复杂,主要是前端验证这里,碰到了一些问题这里提一下,数据库有3个链接,但只有链接1是必填项,后面两个可以填也可以不填,所以这里验证非空可以用ignore的属性。

这个属性的来源是在页面加载的时候调用了validform这个js组件,这个js验证还是挺好用的,具体的使用方法可以搜索一下网上的教程。

3.单选多选框样式

DTcms的后台用的单选多选框的风格还是比较好看的,那么自己写一个单选多选框如何也能变成这种样式呢?如下图所示,注意红框框起的地方,只要用div class为rule-multi-radio和rule-multi-checkbox包起来的单选和复选控件即可。

具体的实现是通过common.js里的初始化设置。

4.富文本编辑器

DTcms里用的富文本编辑器是kindeditor,页面里用textarea包起来,设置class为editor,后台通过txtContent.Value来设置和读取值

然后通过js来加载,这里uplaodjson和filemanagerjson都不用修改,只要设置对路径即可,就能使用图片上传和图片管理功能。

5. btnSubmit_Click函数

最后在搞定btnSubmit_Click函数做好保存和权限验证即可。

至此,后台的列表页和详情页都制作完成了

DTCMS插件的制作实例电子资源管理(二)Admin后台页面编写的更多相关文章

  1. DTCMS插件的制作实例电子资源管理(一)插件目录结构

    总目录 插件目录结构(一) Admin后台页面编写(二) 前台模板页编写(三) URL重写(四)     本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分 ...

  2. DTCMS插件的制作实例电子资源管理(三)前台模板页编写

    总目录 插件目录结构(一) Admin后台页面编写(二) 前台模板页编写(三) URL重写(四) 本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分逻辑实现 ...

  3. DTCMS插件的制作实例电子资源管理(四)URL重写

    总目录 插件目录结构(一) Admin后台页面编写(二) 前台模板页编写(三) URL重写(四) 本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分逻辑实现 ...

  4. crm 系统项目(二) admin 后台操作表格

    crm 系统项目(二) admin 后台操作表格 1. app下创建 templates  运行的时候 先找全局的templates——> 按照app的注册顺序找templates中的文件 2. ...

  5. Android移动APP开发笔记——Cordova(PhoneGap)通过CordovaPlugin插件调用 Activity 实例

    引言 Cordova(PhoneGap)采用的是HTML5+JavaScript混合模式来开发移动手机APP,因此当页面需要获取手机内部某些信息时(例如:联系人信息,坐标定位,短信等),程序就需要调用 ...

  6. Maven-002-eclipse 插件安装及实例

    因为平常编码的时候,习惯了使用 eclipse 进行编码,因而需要将 eclipse 安装 maven 的插件,安装步骤如下所示: 一.安装 选择菜单: help -> Install New  ...

  7. 【eclipse插件开发实战】 Eclipse插件开发6——eclipse在线翻译插件Translator开发实例详解

    Eclipse插件开发6--eclipse在线翻译插件Translator开发实例详解 在上一篇文章中讲到了一个简单的eclipse插件开发实例,主要是对插件工程的基本创建步骤进行了讲解,这篇文章当中 ...

  8. Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验

    Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出E ...

  9. Cocos2d-x v3.6制作射箭游戏(二)

    原文 Cocos2d-x v3.6制作射箭游戏(二) 六 24, 2015by RENSHANin COCOS2D-X 上章我们创建并加载了游戏地图,接下来的两章我们将实现如下的效果. 在开始之前,先 ...

随机推荐

  1. 十五天精通WCF——第十一天 如何对wcf进行全程监控

    说点题外话,我们在玩asp.net的时候,都知道有一个叼毛玩意叫做“生命周期”,我们可以用httpmodule在先于页面的page_load中 做一些拦截,这样做的好处有很多,比如记录日志,参数过滤, ...

  2. SSRS 的简单使用(一)

    简介 SQL Server Reporting Services(SSRS),微软企业级报表平台,和SQL Server Integration Service以及SQL Server Analysi ...

  3. 查看mysql,apache,php,nginx编译参数

    查看nginx编译参数: #/usr/local/nginx/sbin/nginx -V   查看mysql编译参数: cat /usr/local/mysql/bin/mysqlbug | grep ...

  4. JSON格式互转集合

    在工作中我们经常会遇到格式转换的问题,有的时候是将JSON转换成DataTable.DataSet或是List等,也有可能将DataTable.DataSet或是List转换成JSON的,抽了点时间把 ...

  5. 给锁住的行解锁(oracle)

    1.查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v$locked_object; 或者用以下命令: select b. ...

  6. python 缩进语法,优缺点

    Python的语法比较简单——采用缩进方式 缩进有利有弊: 好处之一是强迫你写出格式化的代码,但没有规定缩进是几个空格还是Tab.按照约定俗成的管理,应该始终坚持使用4个空格的缩进. 其二是强迫你写出 ...

  7. Linux软件安装-RPM安装

    RPM是RPM Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux.         S ...

  8. 《Invert》开发日志02:游戏风格定型

    声明:以下涉及到的<God of Light>.<Valiant Hearts : The Great War>.<Angry Birds 2>游戏截图均来自其Ap ...

  9. 2015 Selenium大会

    9月8号到10号三天在俄勒冈州的波特兰召开了Selenium Conference 2015,分享的演讲很多,视频也放出来了,做了下搬运工,传到优酷 简介: A conference that bri ...

  10. 查找代码错误.java

    class Other{ public int i; } class Something{ public static oivd main(String[]args){ Other o = new O ...