📄 customerform.jsp
字号:
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<jsp:directive.page import="com.csu.crm.common.vo.CrmProvince,com.csu.crm.common.vo.CrmArea,com.csu.crm.common.vo.CrmCustomer;"/>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<%@ taglib uri="/WEB-INF/iterate.tld" prefix="iterate"%>
<%-- 客户信息表单的填写,带简单js验证--%>
<html>
<head>
<title>客户信息</title>
<script language="JavaScript" src="<%=basePath%>common/js/ajax.js"></script>
<script language="JavaScript" src="<%=basePath%>common/js/stringUtil.js"></script>
<script language="JavaScript" src="<%=basePath%>common/js/validate.js"></script>
<script language="JavaScript" src="<%=basePath%>common/js/checkUnique.js"></script>
<script type="text/javascript">
function killErrors() {
return true;
}
window.onerror = killErrors;
<%Object obj = request.getAttribute("isSubmited");
if(obj != null && ((String)obj).equals("true")) {%>
alert("提交成功");
window.close();
openner.close();
<%}%>
function init() {
getAllCitys();
<%--
判断 session中是否保存了 已被选择的Customer对象,以判断 此页面是 增加客户信息页面还是修改客户信息页面
--%>
<%--
要设置hibernate配置文件:crmCustomer 中CrmArea 的lazy属性为false
--%>
<% if(session.getAttribute("selectedCustomer") != null) {
CrmCustomer crmCustomer = (CrmCustomer)session.getAttribute("selectedCustomer");
String customerId = crmCustomer.getCustomerId()==null?"":crmCustomer.getCustomerId();
String enterprise = crmCustomer.getEnterprise()==null?"":crmCustomer.getEnterprise();
String property = crmCustomer.getCrmEntProperty()==null?"":crmCustomer.getCrmEntProperty().getPropertyId();
String industry = crmCustomer.getCrmEntIndustry()==null?"":crmCustomer.getCrmEntIndustry().getIndustryId();
String credit = crmCustomer.getCrmEntCredit()==null?"":crmCustomer.getCrmEntCredit().getCreditId();
String bank = crmCustomer.getCrmBank()==null?"":crmCustomer.getCrmBank().getBankId();
String account = crmCustomer.getAccount()==null?"":crmCustomer.getAccount();
String area = crmCustomer.getCrmArea()==null?"":crmCustomer.getCrmArea().getAreaId();
String addr = crmCustomer.getAddr()==null?"":crmCustomer.getAddr();
String site = crmCustomer.getSite()==null?"":crmCustomer.getSite();
String tel = crmCustomer.getTel()==null?"":crmCustomer.getTel();
String fax = crmCustomer.getFax()==null?"":crmCustomer.getFax();
String email = crmCustomer.getEmail()==null?"":crmCustomer.getEmail();
String legalRepr = crmCustomer.getLegalRepr()==null?"":crmCustomer.getLegalRepr();
String tax = crmCustomer.getTax()==null?"":crmCustomer.getTax();
String cuLev = crmCustomer.getCrmCuLev()==null?"":crmCustomer.getCrmCuLev().getCuLevId();
String cuState = crmCustomer.getCrmCuState()==null?"":crmCustomer.getCrmCuState().getCuStateId();
String description = crmCustomer.getDescription()==null?"":crmCustomer.getDescription();
String province = crmCustomer.getCrmArea()==null?"":crmCustomer.getCrmArea().getCrmProvince().getProvinceId(); //此方法要用到hibernate的多级查找,...
//Map mapAreaProvince = (Map)request.getAttribute("mapAreaProvince");
//String province = (String)mapAreaProvince.get(area);
%>
//更改标志位为update
//methodFlag = 'update';
//初始化所有表单对象里的值
document.all("customerId").value='<%=customerId%>';
document.all("enterprise").value='<%=enterprise%>';
//把主属性(唯一检查)保存到originalValue中
originalValue = '<%=enterprise%>';
document.all("account").value='<%=account%>';
document.all("addr").value='<%=addr%>';
document.all("site").value='<%=site%>';
document.all("tel").value='<%=tel%>';
document.all("fax").value='<%=fax%>';
document.all("email").value='<%=email%>';
document.all("legalRepr").value='<%=legalRepr%>';
document.all("tax").value='<%=tax%>';
document.all("description").value='<%=description%>';
<%if(property != ""){%> document.all("property").options('<%=property%>').selected='selected';<%}%>
<%if(industry != ""){%> document.all("industry").options('<%=industry%>').selected='selected';<%}%>
<%if(credit != ""){%> document.all("credit").options('<%=credit%>').selected='selected';<%}%>
<%if(bank != ""){%> document.all("bank").options('<%=bank%>').selected='selected';<%}%>
<%if(cuLev != ""){%> document.all("cuLev").options('<%=cuLev%>').selected='selected';<%}%>
<%if(cuState != ""){%> document.all("cuState").options('<%=cuState%>').selected='selected';<%}%>
//先初始化省份的下拉框
document.all("province").options('<%=province%>').selected='selected';
//再调用ajax
provinceChange(document.all("province"));
//再初始化城市的下拉框
document.all("area").options('<%=area%>').selected='selected';
<%
}
%>
}
var citys = new Array();
function getAllCitys() {
<%
Map mapArea = (Map)request.getAttribute("mapAllArea");
List listAreaId = (List)request.getAttribute("listAllAreaId");
Iterator itArea = listAreaId.iterator();
String curAreaId = null;
String curArea = null;
while(itArea.hasNext()) {
curAreaId = (String)itArea.next();
CrmArea crmArea = (CrmArea)mapArea.get(curAreaId);
curArea =crmArea.getCity();
%>
var curAreaId='<%=curAreaId%>';
var curArea='<%=curArea%>';
citys[curAreaId] = curArea;
<%
}
%>
}
function provinceChange(obj) {
if(!request) {
createRequest();
}
//citySelect.style.display="block";
var optionArr=document.all("area").options;
//清空
while(optionArr.length>0){
optionArr.remove(0);
}
//当前选择的省份Id
var selectedProvinceId = obj.options(obj.options.selectedIndex).id;
var url = "servlet/SelectCityServlet?id=" + selectedProvinceId;
request.open("GET", url, true);
request.onreadystatechange = addCity;
request.send(null);
}
function addCity() {
if (request.readyState == 4) {
var city = request.responseXML.getElementsByTagName("city");
//alert(city.length);
var str=new Array();
var tmp = null;
for(var i=0;i<city.length;i++){
tmp = city[i].firstChild.data;
str[i]=citys[tmp];
}
buildSelect(str,document.getElementById("area"));
}
}
function buildSelect(str,sel) {
sel.options.length=0;
for(var i=0;i<str.length;i++) {
sel.options[sel.options.length]=new Option(str[i],str[i]);
}
}
function checkConstraint() {
//请按要求填写再提交
//alert(constraint);
if(Trim(document.all("enterprise").value).length == 0) {
alert("企业名称未填写");
document.all("enterprise").focus();
return false;
}
if(constraint != 'pass') {
alert("企业名称已被占用");
document.all("enterprise").focus();
return false;
}
}
</script>
</head>
<link href="<%=basePath%>common/css/main.css" rel="stylesheet" type="text/css">
<body onload="init();"><br>
<html:form action="/customer" onsubmit="return checkConstraint();">
<%--一个隐藏域 --%>
<html:hidden property="customerId"/>
<table border="0" align="center" cellpadding=0 cellspacing=0 class="border">
<tr>
<td colspan="4" valign="bottom" background="<%=basePath%>common/img/nav_iframe.jpg" class="text-Shadow"><div align="left"> 客户信息</div></td>
</tr>
<tr>
<td colspan="4" valign="bottom" background="<%=basePath%>common/img/nav_iframe.jpg" class="text-Shadow"><div id='tip' style='display:none' align="right"><font color="#990000">请输入正确格式</font></div></td>
</tr>
<%--企业名称--%>
<tr>
<td><bean:message key="label.customer.ent"/></td>
<td colspan="2"><html:text property="enterprise" onblur="checkUnique('CrmCustomer','enterprise',this)"/><font color="#990000">*</font></td>
<td>
<div id='uniqueTip' style='display:none'><font color="#990000">此名字已被占用</font></div>
<div id='notnullTip' style='display:none'><font color="#990000">请输入企业名</font></div>
</td>
</tr>
<%--
iterate自定义标签使用说明:
属性:name 必须 指定生成的select的name属性,即<select name="?"
list 必须 指定要迭代的list,list 里保存的是String型的对象
--%>
<%--企业性质--%>
<tr>
<td><bean:message key="label.customer.ent.property"/></td>
<td colspan="2"><iterate:iterateMap name="property" map="${mapAllProperty}" list="${listAllProperty}"/></td>
<td></td>
</tr>
<%--行业类型--%>
<tr>
<td><bean:message key="label.customer.ent.industry"/></td>
<td colspan="2"><iterate:iterateMap name="industry" map="${mapAllIndustry}" list="${listAllIndustry}"/></td>
<td></td>
</tr>
<%--信誉级别--%>
<tr>
<td><bean:message key="label.customer.ent.credit"/></td>
<td colspan="2"><iterate:iterateMap name="credit" map="${mapAllCredit}" list="${listAllCredit}"/></td>
<td></td>
</tr>
<%--银行--%>
<tr>
<td><bean:message key="label.customer.bank"/></td>
<td colspan="2"><iterate:iterateMap name="bank" map="${mapAllBank}" list="${listAllBank}"/></td>
<td></td>
</tr>
<%--银行账号 js整数验证--%>
<tr>
<td><bean:message key="label.customer.account"/></td>
<td colspan="2"><html:text property="account" onblur="return validateIsInt(this)" maxlength="19"/></td>
<td>请输入19位的银行账号(0-9)</td>
</tr>
<%--地址--%>
<tr>
<td><bean:message key="label.customer.address"/></td>
<%--区域 由国家,省份,城市组成--%>
<td>
<select name="province" onchange="provinceChange(this)">
<%
Map mapProvince = (Map)session.getAttribute("mapAllProvince");
List listProviceId = (List)request.getAttribute("listAllProvinceId");
Iterator itProvince = listProviceId.iterator();
String curProvinceId = null;
String curProvince = null;
while(itProvince.hasNext()) {
curProvinceId = (String)itProvince.next();
CrmProvince crmProvince = (CrmProvince)mapProvince.get(curProvinceId);
curProvince =crmProvince.getProvince();
%>
<option id="<%=curProvinceId%>">
<%=curProvince%>
</option>
<% }
%>
</select>
<%--<bean:message key="label.customer.area.city"/>--%>
<select name="area">
<option id='notSelect'>---请选择---</option>
</select>
</td>
<td>
</td>
<td></td>
</tr>
<tr>
<td></td>
<td colspan="2"><html:text property="addr"/></td>
<td></td>
</tr>
<%--网址--%>
<tr>
<td><bean:message key="label.customer.site"/></td>
<td colspan="2"><html:text property="site"/></td>
<td></td>
</tr>
<%--电话 js电话验证--%>
<tr>
<td><bean:message key="label.customer.tel"/></td>
<td colspan="2"><html:text property="tel" onblur="return validateTel(this)"/></td>
<td>请输入7到8位的电话号码(0-9)</td>
</tr>
<%--传真 js电话验证--%>
<tr>
<td><bean:message key="label.customer.fax"/></td>
<td colspan="2"><html:text property="fax" onblur="return validateTel(this)"/></td>
<td>请输入7到8位的电话号码(0-9)</td>
</tr>
<%--电子邮件 js_e-mail验证--%>
<tr>
<td><bean:message key="label.customer.email"/></td>
<td colspan="2"><html:text property="email" onblur="return validateEmail(this)"/></td>
<td>请输入正确的电子邮件格式</td>
</tr>
<%--法人代表--%>
<tr>
<td><bean:message key="label.customer.legalrepr"/></td>
<td colspan="2"><html:text property="legalRepr"/></td>
<td></td>
</tr>
<%--纳税账号 js整数验证--%>
<tr>
<td><bean:message key="label.customer.tax"/></td>
<td colspan="2"><html:text property="tax" onkeyup="return validateIsInt(this)" maxlength="19"/></td>
<td>请输入19位的纳税账号(0-9)</td>
</tr>
<%--客户级别 --%>
<tr>
<td><bean:message key="label.customer.lev"/></td>
<td colspan="2"><iterate:iterateMap name="cuLev" map="${mapAllCuLev}" list="${listAllCuLev}"/></td>
<td></td>
</tr>
<%--客户状态 --%>
<tr>
<td><bean:message key="label.customer.state"/></td>
<td colspan="2"><iterate:iterateMap name="cuState" map="${mapAllCuState}" list="${listAllCuState}"/></td>
<td></td>
</tr>
<%--备注 --%>
<tr>
<td><bean:message key="label.customer.description"/></td>
<td colspan="3"><html:textarea property="description" rows="2" cols="50"/></td>
</tr>
<tr>
<td><html:submit>确定</html:submit></td>
<td><input type="button" value="取消" onclick="window.close();"/></td>
<td></td>
<td align="left"><html:reset>清空</html:reset></td>
</tr>
</table>
</html:form>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -