一,书籍新增界面类别下拉框

1.1:根据下拉框类型写实体类:


1.2 查询所有类型的方法

 public List<Category> listType(Category category,PageBean pageBean) throws Exception{String sql="select * from t_easyui_category where 1=1";return executeQuery(sql, Category.class, pageBean);}

1.3 子控制器(CategoryAction

package com.xyy.web;import java.util.List;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.xyy.dao.CategoryDao;
import com.xyy.entity.Category;
import com.zking.framework.ActionSupport;
import com.zking.framework.ModelDriver;
import com.zking.util.ResponseUtil;public class CategoryAction extends ActionSupport implements ModelDriver<Category>{public Category category=new Category();public CategoryDao categoryDao=new CategoryDao();@Overridepublic Category getModel() {return category;}public String listType(HttpServletRequest req, HttpServletResponse resp) throws Exception {List<Category> listType = categoryDao.listType(category, null);ResponseUtil.writeJson(resp, listType);return null;}
} 

1.4在点击菜单栏需弹出一个增加的窗口

$(function(){$("#bookMenus").tree({url:$("#ctx").val()+"/permission.action?methodName=tree",
//        给菜单栏一个点击onClick: function(node){
//            判断面板是否存在var exists=$("#bookTabs").tabs('exists',node.text);if(exists){$("#bookTabs").tabs('select',node.text);}else{$('#bookTabs').tabs('add',{    title:node.text,    content:'<iframe width="100%" height="100%" src="'+$("#ctx").val()+node.attributes.self.url+'" />',    closable:true}); }}});
})

1.5 通过数据库内的类型传到增加窗口的下拉框,使其灵活性

借助API中的ComboBox(下拉列表框)

<input id="cid" name="cid" value="" label="类别" >

js文件:

   $(function () {$('#cid').combobox({    url:'${pageContext.request.contextPath}/category.action?methodName=combobox',                valueField:'id',    textField:'text'   });  });

效果展示:

二,书籍新增

2.1书籍实体类:

//    查询时间的时候用这个格式

@JsonFormat(pattern="yyyy-mm-dd HH:mm:ss",timezone="GMT+8")
  private Date deployTime;


2.2bookDao

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.3 bookAction

public void add(HttpServletRequest req, HttpServletResponse resp) {try {bd.add(book);ResponseUtil.writeJson(resp, 1);} catch (Exception e) {e.printStackTrace();try {ResponseUtil.writeJson(resp, 0);} catch (Exception e1) {e1.printStackTrace();}}}

2.4 获取数据,提交表单

/*     通过form控件提交 */function submitForm() {$('#ff').form('submit', {    url:'${pageContext.request.contextPath}/book.action?methodName=add',    success:function(data){    if(data==1){$('#ff').form('clear');}}    });  }/* 刷新 */function clearForm() {$('#ff').form('clear');}

效果展示:

新增的书籍在未上架中。

三,上架&下架

3.1 上架其实就是修改书籍属性

    public List<Book> list(Book book, PageBean pageBean) throws Exception {String sql="select * from t_easyui_book where 1=1";String name=book.getName();int state = book.getState();if(StringUtils.isNotBlank(name)) {sql+=" and name like '%"+name+"%'";}if(state!=0) {sql+=" and state ="+state;}return super.executeQuery(sql, Book.class, pageBean);}//    上下架public void editStatus(Book book) throws Exception {super.executeUpdate("update t_easyui_book set state=?  where id=?", book,new String[] {"state","id"});}

3.2 子控制器

public void list(HttpServletRequest req, HttpServletResponse resp) {PageBean pageBean=new PageBean();pageBean.setRequest(req);try {List<Book> list = bd.list(book, pageBean);ResponseUtil.writeJson(resp, new R().data("total", pageBean.getTotal()).data("rows", list));} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}//    如果上架,书籍的状态改为2
//    如果下架,书籍的状态改为3public void editStatus(HttpServletRequest req, HttpServletResponse resp) {try {bd.editStatus(book);ResponseUtil.writeJson(resp, 1);} catch (Exception e) {e.printStackTrace();try {ResponseUtil.writeJson(resp, 0);} catch (Exception e1) {e1.printStackTrace();}}

3.3 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) {}})} }});}根据状态的不同,改变上下架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');    // 重新载入当前页面数据  }})}}});}

效果展示:已上架&已下架

书籍新增类别下拉框上下架相关推荐

  1. 新增书籍类别下拉框加载、书籍上下架功能

    课程内容: 1.新增书籍 2.上架书籍 3.下架书籍 一.新增页面书籍类别下拉框加载 1.根据下拉框类型写实体类 2.查询所有类型的方法(CategoryDao) package com.zxy.da ...

  2. 去除下拉框上向下的箭头

    一般情况下下拉框都会有一个向下的小箭头,例如: 如何去除这个小箭头呢? select {/*很关键:将默认的select选择框样式清除*/appearance:none;-moz-appearance ...

  3. 新增书籍类别,下拉框加载,书籍上下架操作

    一.新增页面书籍类别下拉框加载 1.查询所有类型的方法(CategoryDao) package com.xly.dao;import java.util.List;import com.xly.en ...

  4. 门户书籍,类别查询,图片上传

    一.门户首页类别 知识:学一个查询书籍的方法,在index.js中运用ajax技术,然后定义一个jsonarry来接收数据, 接着用一个html来拼接数据,最后显示出来. 1.entity类别实体类 ...

  5. 通过触发绑定切换下拉框的数据

    通过触发绑定切换下拉框的数据 -------------------------------------- 开发工具与关键技术:Visual Studio 2015 C# 作者:林敏静 撰写时间:20 ...

  6. 自定义Select下拉框

    背景 经常写Web页面的同学可能会碰到如下的诉求: 新增一个下拉框 要求做的好看一点(鼠标放上去的颜色与原生Select不同,Select背景色也要有所变化) 下拉框中的元素需要分组,分组以后最好还能 ...

  7. C# .net 下拉框显示提示内容-【ComboBox】

    ____________________________________________________________________________________________________ ...

  8. vue用element两个下拉框连动

    遇到了下拉框相连的,点第一个后,第二个出数据 注意::key="item.id"一般写id :label="item.paramterName" 下拉框显示数据 ...

  9. Android 多级联动下拉框

    /** * 获取大类别下拉框数据,并添加到下拉框 / private void get_b_type(){ String sql = "SELECT b_type FROM machine_ ...

  10. 关于javaScript实现select下拉框自动展开

    我本来的目的:是想实现鼠标移动到select下拉框上,下拉框自动展开.  原先思路:使用onmouseover()鼠标事件调用一个openSelect()函数,函数中调用onclick()方法,以为就 ...

最新文章

  1. 急需降低系统复杂性,我们从 Kafka 迁移到了 Pulsar
  2. 160个Crackme009
  3. EduCoder Linux之文件/目录搜索
  4. python比较两个二进制文件_python三种方法判断文件是否为二进制文件
  5. ES6-8 - 函数名/对象拓展、描述符、getter/setter
  6. VC++ 在两个程序中 传递字符串等常量值的方法:使用了 WM_COPYDATA 消息的
  7. PHP 结合redis实现高并发下抢购、秒杀
  8. linux 驱动编译静态,Linux驱动静态编译和动态编译方法详解
  9. 如何遍历或枚举JavaScript对象?
  10. 专家:苹果有能力打造Mac芯片但不会去做
  11. python爬取cnnvd,粘贴可用
  12. IPv4向IPv6转换的几种技术分析
  13. Go 依赖注入库dig
  14. [HCIP] 04 - 路由控制之策略路由
  15. herf(超链接、锚链接)
  16. 超详细Openstack核心组件——Placement部署
  17. 用NDK-r25交叉编译zlib-1.2.12
  18. 说散就散乃是人生常态
  19. 溯源系统服务器,区块链溯源服务平台系统架构!
  20. 文件浏览器ftp服务器,es文件浏览器查看ftp服务器

热门文章

  1. Bluetooth Profile Specification之(AVRCP篇)5.0 AVRCP简介
  2. 高响应比优先调度算法 java_操作系统高响应比优先模拟算法
  3. 2021-07-30
  4. 【Java面试题】这道分布式面试题一定要拿下,说说你对CAP的理解?看看高手如何回答
  5. mysql修改指定记录_sql操作之修改记录值
  6. ubuntu 下WebStorm 无法输入中文
  7. 数据存储之SwiftJSON
  8. SwiftyJSON 如何使用
  9. RBF神经网络——案例二
  10. Skyline软件二次开发初级——2如何在WEB页面中控制三维地图的观察点坐标和角度...