前言:昨天与大家分享了EasyUi项目之登录、注册以及权限树形展示,而今天的内容是继而昨天的内容,进行书籍的增删改查。而今天也会讲解到一个关于easyui的之前没有分享的新的控件---combobox(下拉框)

一、明确目标:

1、点击新增书籍时弹出新增书籍界面,而类型将会进行下拉框的显示。
        2、新增一本书后,该书就会显示到未上架的界面中。

3、在未上架的界面中点击上架就会到显示到已上架中

4、在未上架的界面中点击修改就会进行修改

5、在已上架的界面中点击下架就会到显示到已下架中

二、明确功能:

1、用combobox控件进行类型的显示、增加

2、修改

3、编辑状态(上架、下架——因为上架和下架的功能是根据该书籍的状态进行区分的,1表示未上架,2表示已上架,3表示已下架)

三、代码已经效果展示:

一、用combobox控件进行类型的显示:

1、思路:

1、先建好关于category表的实体类

2、之后创建categorydao层(写好查询全部的方法)

3、写好categoryaction包(这是连接前端的代码)

4、配置好mvc.xml文件

5、之后到对应该出现下拉框位置写好js代码

2、代码展示:

2.1实体类:

package com.zking.entity;public class Category {private long id;private String name;public long getId() {return id;}public void setId(long id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Category(long id, String name) {super();this.id = id;this.name = name;}@Overridepublic String toString() {return "Category [id=" + id + ", name=" + name + "]";}public Category() {// TODO Auto-generated constructor stub}}

2.2、categorydao(list方法):

package com.zking.dao;import java.util.List;import com.zking.entity.Category;
import com.zking.util.BaseDao;
import com.zking.util.PageBean;public class CategoryDao extends BaseDao<Category> {public List<Category> list(Category category, PageBean pageBean) throws Exception {String sql="select * from t_easyui_category ";return super.executeQuery(sql, Category.class, pageBean);}}

2.3、categoryaction:

public class CategoryAction  extends ActionSupport implements ModelDriver<Category>{private Category category=new Category();private CategoryDao cd=new CategoryDao();public Category getModel() {return category;}public String combobox(HttpServletRequest req, HttpServletResponse resp)  {try {List<Category> list = cd.list(category, null);ResponseUtil.writeJson(resp, list);} catch (Exception e) {e.printStackTrace();}return null;}

2.4、配置好mvc.xml文件:

<action path="/category" type="com.zking.web.CategoryAction"></action>

2.5、写好js代码:

下拉框html代码:
<div style="margin-bottom:20px"><input id="cid" name="cid" value="" label="类别" ><%--<select class="easyui-combobox" name="cid" label="类别" style="width:100%">--%><%--<option value="1">文艺</option>--%><%--<option value="2">小说</option>--%><%--<option value="3">青春</option>--%><%--</select>--%></div>  js方法:
$(function () {$('#cid').combobox({    url:'${pageContext.request.contextPath}/category.action?methodName=combobox',    valueField:'id',    textField:'name'   });  });

3、效果展示:

二、增加:

1、代码展示:

 public void add(Book t) throws Exception {t.setPinyin(PinYinUtil.getAllPingYin(t.getName()));t.setDeployTime(new Date());String sql="insert into t_easyui_book(name,pinyin,cid,author,price,image,publishing,description,state,deployTime,sales) values(?,?,?,?,?,?,?,?,?,?,?)";super.executeUpdate(sql, t, new String[] {"name","pinyin","cid","author","price","image","publishing","description","state","deployTime","sales"});}

2.效果展示:

在右下角可以得到,数据为28条,现在进行增加

现在可以看到已经是30条数据了,新增成功

新增成功已将书籍添加到了未上架的界面中:

三、修改:

1、代码展示:

public void edit(Book t) throws Exception {super.executeUpdate("update t_easyui_book set name=?,pinyin=?,cid=?,"+ "author=?,price=?,image=?,publishing=?,description=?,state=?,deployTime=?,sales=? where id=?", t, new String[] {"name","pinyin","cid","author","price","image","publishing","description","state","deployTime","sales","id"});}

1、效果展示:

修改前:

​​​​​​​修改中:

修改后:

四、编辑状态:

一、在未上架的界面中点击上架就会到显示到已上架中:

1、思路:

1、在bookdao中写好编辑状态的方法名为editstatus(根据id进行state状态的修改)

2、然后找到未上架界面,找到上架的超链接

3、之后写js代码(在跳转路径中固定写好要变成的状态)

4、最后写刷新代码

2、代码展示:

bookdao:

 public void editStatus(Book t) throws Exception {super.executeUpdate("update t_easyui_book set state=? where id=?", t, new String[] {"state","id"});}

listbook1.jsp:

js方法:

 function shangjia() {$.messager.confirm('确认','您确认想要上架此书籍吗?',function(r){if (r){var row = $('#dg').datagrid('getSelected');if (row){$.ajax({url:'${pageContext.request.contextPath}/book.action?methodName=editStatus&state=2&id=' + row.id,success:function (data) {if(data=1){$('#dg').datagrid('reload'); //刷新的代码  }}})} }});}

在其中的url中定义好要改变的状态,上架的目的就是将状态为未上架改为已上架(将state=1变成state=2)同样的刷新代码也在其中。

3、效果展示:

将改书籍上架:

上架成功:

同时在未上架界面中要上架的图书已经消失:

二、在已上架的界面中点击下架就会到显示到已下架中

1、思路:

1、和点一是一样的,采用同样的方法:

2、然后找到已上架界面,找到下架的超链接

3、之后写js代码(在跳转路径中固定写好要变成的状态)

4、最后写刷新代码

2、代码展示:采用bookdao同样的方法

listbook2.jsp:

js方法:

   function xiajia() {$.messager.confirm('确认','您确认想要下架此书籍吗?',function(r){if (r){var row = $('#dg').datagrid('getSelected');if (row){$.ajax({url:'${pageContext.request.contextPath}/book.action?methodName=editStatus&state=3&id=' + row.id,success:function (data) {$('#dg').datagrid('reload');                         }})}}});}

3、效果展示:将书籍名为阿发的书籍下架

 下架中:

书籍名为阿发这本书已经消失:

在已下架中可以看到阿发这本书:

以上效果均已实现

总结:今天分享的知识就这些了,功能实现并不难,只要细心与认真都到位就可以了。分享知识就到这了,祝大家爱生活愉快!

EasyUi之书籍功能(CRUD)相关推荐

  1. 图书管理系统( ( JSP + JDBC + Servlet ) )实现-06: 查询所有书籍功能

    01: 流程分析和数据库建表阶段 02: 编写和配置过滤器(防止页面乱码) 03:项目搭建 & 工具类的实现 &依赖导入 04: 建立数据库的实体类(pojo) 05: 实现登录功能 ...

  2. easyui plugin——etreegrid:CRUD Treegrid

    昨天写了一个ko+easyui的同样的实现,感觉写的太乱,用起来十分麻烦,于是今天照着edatagrid,写了一个etreegrid,这样再用ko绑定就方便多了. 使用很简单,$(tableId).e ...

  3. EasyUI easyui-datagrid分页功能实现

    $('#dg_query').datagrid({ toolbar:toolbar,loadMsg:'数据加载中....',columns:[[{field:'ckSelect',title:'选择' ...

  4. easyUI 相关清空功能

    form表单清空 $("#xx_form").form('clear'); 列表清空 $('#filegrid').datagrid('loadData', { total: 0, ...

  5. easyui图片放大功能(取巧)

    先定义一个会话框里面隐藏一个div标签 <div id="dlgdiv" class="easyui-dialog"style="width: ...

  6. easyui crud java_轻松学习jQuery插件EasyUI EasyUI创建CRUD应用

    数据收集并妥善管理数据是网络应用共同的必要.CRUD 允许我们生成页面列表,并编辑数据库记录.本教程将向你演示如何使用 jQuery EasyUI 框架实现一个 CRUD DataGrid. 我们将使 ...

  7. 使用EasyUI实现修改删除功能

    目录 前言: 这次的功能是基于上一次的项目做的,如果有不懂的可以看上一节使用EasyUI实现增加功能 一:前台开发 二:后台开发 三:效果图 距离使用EasyUI完成整个后台.书本管理项目只剩这最后一 ...

  8. easyui crud java_Easyui 创建 CRUD 应用_EasyUI 插件

    数据收集并妥善管理数据是网络应用共同的必要.CRUD 允许我们生成页面列表,并编辑数据库记录.本教程将向你演示如何使用 jQuery EasyUI 框架实现一个 CRUD DataGrid. 我们将使 ...

  9. easyui datagrid plunges 扩展 插件

    项目使用 springmvc4.x  spring4.x  hibernate4.x easyui 为了便于开发,扩展了easyui 的 datagrid 功能,下面直接贴上扩展代码: /** * c ...

  10. java jsf_使用Java和JSF构建一个简单的CRUD应用

    java jsf 使用Okta的身份管理平台轻松部署您的应用程序 使用Okta的API在几分钟之内即可对任何应用程序中的用户进行身份验证,管理和保护. 今天尝试Okta. JavaServer Fac ...

最新文章

  1. 现在,Serverless 真的已经成熟了吗?
  2. 开根号的笔算算法图解_机器学习KNN算法之手写数字识别
  3. valgrind-3.11.0 交叉编译
  4. 中国大学moocpython笔记_用Python玩转数据,中国大学MOOC(慕课)答案公众号搜题
  5. 404 Note Found 团队会议纪要
  6. Maven 项目创建 找不到web.xml
  7. Android Things揭开面纱
  8. 95-140-140-源码-transform-双流操作的实现
  9. @程序员,不要再锤产品经理了,锤这个吧!!!
  10. html取元素的文本,解析HTML以获取元素内的文本
  11. 震撼!七大议题全数入选!九州云与您相约温哥华
  12. gzdeflate函数_php 压缩函数gzencode gzdeflate gzcompress
  13. 复变函数——一到三章总结
  14. getchar函数详解看这一篇就够了-C语言(函数功能、使用、返回值)
  15. iOS应用的游戏中心和排行榜
  16. 2020年部编人教版小学一年级语文(上册)全部知识点汇总
  17. DM MPP部署问题
  18. Linux下分割、合并PDF(pdftk)
  19. C#用easy-mvc开发的后台管理系统
  20. 北航计算机考研小黑书,不会真有人以为四川大学分数低吧?川大最高分比北航南大最高分还高...

热门文章

  1. 标准输入输出 stdio 流缓冲 buffering in standard streams
  2. 鸿蒙os锁屏样式怎么用,怎样设置微信锁屏显示
  3. Android 系统蓝牙 控制手机端音乐暂停 (AVRCP)
  4. 液压系统原理动画_「修机」64个基本液压回路原理动画,全部看懂你就能成专家...
  5. EPLAN P8.2.7 学习版安装教程(适用于 Win10 64位)
  6. matlab插值法计算根号,怎么用matlab利用拉格朗日插值计算法的原理编写并计算函数所在节点的近似值....
  7. “野火FreeRTOS教程”第9章知识点总结-空闲任务与阻塞延时
  8. 1602 c语言驱动程序,51单片机驱动LCD1602程序设计(C语言)很详细的教程
  9. 工业互联网常用无线通信协议介绍(详细版)
  10. Python 最新版破解滑块验证码自动登录QQ空间