表结构如下:

jeecg 使用jquery jeecg开发文档_jeecg 使用jquery

其中merchants_name为商家名称,balance为余额,其它三个字雄姿英发id是主键,create_date,updaet_date是创建时间和修改时间不涉及到业务逻揖,jeecg会自动处理这些字段

使用jeecg的代码生成器生成的页面代码如下:

列表页面:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<div class="easyui-layout" fit="true">
  <div region="center" style="padding:1px;">
  <t:datagrid name="merchantsList" title="商家信息" actionUrl="merchantsController.do?datagrid" idField="id" fit="true">
   <t:dgCol title="编号" field="id" hidden="false"></t:dgCol>
   <t:dgCol title="商家名称" field="merchantsName" ></t:dgCol>
   <t:dgCol title="余额" field="balance" ></t:dgCol>
   <t:dgCol title="操作" field="opt" width="100"></t:dgCol>
   <t:dgDelOpt title="删除" url="merchantsController.do?del&id={id}" />
   <t:dgToolBar title="录入" icon="icon-add" url="merchantsController.do?addorupdate" funname="add"></t:dgToolBar>
   <t:dgToolBar title="编辑" icon="icon-edit" url="merchantsController.do?addorupdate" funname="update"></t:dgToolBar>
   <t:dgToolBar title="查看" icon="icon-search" url="merchantsController.do?addorupdate" funname="detail"></t:dgToolBar>
  </t:datagrid>
  </div>
 </div>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<div class="easyui-layout" fit="true">
  <div region="center" style="padding:1px;">
  <t:datagrid name="merchantsList" title="商家信息" actionUrl="merchantsController.do?datagrid" idField="id" fit="true">
   <t:dgCol title="编号" field="id" hidden="false"></t:dgCol>
   <t:dgCol title="商家名称" field="merchantsName" ></t:dgCol>
   <t:dgCol title="余额" field="balance" ></t:dgCol>
   <t:dgCol title="操作" field="opt" width="100"></t:dgCol>
   <t:dgDelOpt title="删除" url="merchantsController.do?del&id={id}" />
   <t:dgToolBar title="录入" icon="icon-add" url="merchantsController.do?addorupdate" funname="add"></t:dgToolBar>
   <t:dgToolBar title="编辑" icon="icon-edit" url="merchantsController.do?addorupdate" funname="update"></t:dgToolBar>
   <t:dgToolBar title="查看" icon="icon-search" url="merchantsController.do?addorupdate" funname="detail"></t:dgToolBar>
  </t:datagrid>
  </div>
 </div>

新增修改页:

<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<!DOCTYPE html>
<html>
 <head>
  <title>商家信息</title>
  <t:base type="jquery,easyui,tools,DatePicker"></t:base>
 </head>
 <body style="overflow-y: hidden" scroll="no">
  <t:formvalid formid="formobj" dialog="true" usePlugin="password" layout="div" action="merchantsController.do?save">
		<input id="id" name="id" type="hidden" value="${merchantsPage.id }">
		<fieldset class="step">
			<div class="form">
		      <label class="Validform_label">商家名称:</label>
		      <input class="inputxt" id="merchantsName" name="merchantsName" ignore="ignore"
					   value="${merchantsPage.merchantsName}">
		      <span class="Validform_checktip"></span>
		    </div>
			<div class="form">
		      <label class="Validform_label">余额:</label>
		      <input class="inputxt" id="balance" name="balance" ignore="ignore"
					   value="${merchantsPage.balance}" datatype="d">
		      <span class="Validform_checktip"></span>
		    </div>
	    </fieldset>
  </t:formvalid>
 </body>
<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<!DOCTYPE html>
<html>
 <head>
  <title>商家信息</title>
  <t:base type="jquery,easyui,tools,DatePicker"></t:base>
 </head>
 <body style="overflow-y: hidden" scroll="no">
  <t:formvalid formid="formobj" dialog="true" usePlugin="password" layout="div" action="merchantsController.do?save">
		<input id="id" name="id" type="hidden" value="${merchantsPage.id }">
		<fieldset class="step">
			<div class="form">
		      <label class="Validform_label">商家名称:</label>
		      <input class="inputxt" id="merchantsName" name="merchantsName" ignore="ignore"
					   value="${merchantsPage.merchantsName}">
		      <span class="Validform_checktip"></span>
		    </div>
			<div class="form">
		      <label class="Validform_label">余额:</label>
		      <input class="inputxt" id="balance" name="balance" ignore="ignore"
					   value="${merchantsPage.balance}" datatype="d">
		      <span class="Validform_checktip"></span>
		    </div>
	    </fieldset>
  </t:formvalid>
 </body>

主要记录一下表单录入的界面

  1. 字段验证:
    默认所有字段都不验证的好象(今天发现是根据设计数据库表时对应字段是否允许为空来确定的,如果设计表时允许该字段为空,则默认不进行非空的验证,如果不允许为空则默认进行非空的验证),就是生成的字段属性都会有ignore="ignore"这个属性了,如果去掉这个属性,默认会不允许为空,所以如果要设置某个字段不允许为空,直接把这个属性去掉就好了,当然jeecg还提供了非常丰富的字段验证的规则,比如这边balance为double型,这时生成的输入框的代码中会有一个datatype="d"的属性,表示只允许属入数字,当然还有其它许多的规则,可以参考官方的文档或张代浩的博客
  2. 重名验证
    这边商家名称是不允许重名的,原来以为需要写一个ajax的调用来验证,结果发现jeecg提供了一个非常贴心的属性:validType,只要在生成的代码的对应属性中增加以下属性就可以了:


validType="logistics_merchants,MERCHANTS_NAME,id"
validType="logistics_merchants,MERCHANTS_NAME,id"

格式为:数据表名称、对应的数据库字段、业务实体的隐藏域主键的Id属性

注意这边都是数据库字段和表的名称或属性,不是业务实体的名称或属性