增加配置表单页的校验

This commit is contained in:
chenjinsong
2018-03-13 10:03:01 +08:00
parent 4e0c54421f
commit a14cfe9e71
7 changed files with 188 additions and 32 deletions

View File

@@ -5,7 +5,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="letter"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="letter"/></label>
<div class="col-md-6">
<select name="requestId" title=<spring:message code="select"/> data-live-search="true" data-live-search-placeholder="search" class="selectpicker form-control">
<c:forEach items="${requestInfos}" var="requestInfo">

View File

@@ -4,29 +4,32 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="config_describe"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="cfgDesc" value="${_cfg.cfgDesc}">
</div>
<div for="cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="match_area"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="match_area"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="district" value="${_cfg.district}">
</div>
<div for="district"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="key_word"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="key_word"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="keywords" value="${_cfg.keywords}">
</div>
<div for="keywords"></div>
</div>
</div>
@@ -48,7 +51,7 @@
</div> --%>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="whether_area_block"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_area_block"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="1"
@@ -62,13 +65,14 @@
</label>
<%-- <input class="form-control" type="text" name="isAreaEffective" value="${_cfg.isAreaEffective}"> --%>
</div>
<div for="isAreaEffective"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="expression_type"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="expression_type"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="exprType" value="1"
@@ -81,11 +85,12 @@
><spring:message code="null"/>
</label>
</div>
<div for="isAreaEffective"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="match_method"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="match_method"/></label>
<div class="col-md-6">
<select name="matchMethod" class="selectpicker select2 form-control" title=<spring:message code="select"/> >
<option value="0" <c:if test="${_cfg.matchMethod==0 }">selected</c:if>><spring:message code="substring_match"></spring:message></option>
@@ -94,13 +99,14 @@
<option value="3" <c:if test="${_cfg.matchMethod==3 }">selected</c:if>><spring:message code="exactly_match"></spring:message></option>
</select>
</div>
<div for="matchMethod"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="whether_hexbinary"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_hexbinary"/></label>
<div class="col-md-6">
<select name="isHexbin" class="selectpicker select2 form-control" title=<spring:message code="select"/> >
<option value="0" <c:if test="${_cfg.isHexbin==0 }">selected</c:if>><spring:message code="case_insensitive_nohex"></spring:message></option>

View File

@@ -4,7 +4,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="config_describe"/></label>
<div class="col-md-6">
<input class="form-control" type="text" id="cfgDesc" name="cfgDesc" value="${_cfg.cfgDesc}">
</div>
@@ -13,7 +13,7 @@
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="ip_type"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="ip_type"/></label>
<div class="col-md-6">
<select name="ipType" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="4" <c:if test="${_cfg.ipType==4}">selected</c:if> >V4</option>
@@ -28,7 +28,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="client_ip"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_ip"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="srcIp" value="${_cfg.srcIp}">
</div>
@@ -37,7 +37,7 @@
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="client_address_mask"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_address_mask"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="srcIpMask" value="${_cfg.srcIpMask}">
</div>
@@ -48,7 +48,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="client_port"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="srcPort" value="${_cfg.srcPort}">
</div>
@@ -57,7 +57,7 @@
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="client_port_mask"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="client_port_mask"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="srcPortMask" value="${_cfg.srcPortMask}">
</div>
@@ -68,7 +68,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="server_ip"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_ip"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="dstIp" value="${_cfg.dstIp}">
</div>
@@ -77,7 +77,7 @@
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="server_address_mask"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_address_mask"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="dstIpMask" value="${_cfg.dstIpMask}">
</div>
@@ -88,7 +88,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="server_port"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="dstPort" value="${_cfg.dstPort}">
</div>
@@ -97,7 +97,7 @@
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="server_port_mask"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="server_port_mask"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="dstPortMask" value="${_cfg.dstPortMask}">
</div>
@@ -108,7 +108,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="direction"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="direction"/></label>
<div class="col-md-6">
<select name="direction" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="0" <c:if test="${_cfg.direction==0}">selected</c:if>>0</option>
@@ -121,7 +121,7 @@
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="protocol"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="protocol"/></label>
<div class="col-md-6">
<select name="protocol" class="selectpicker show-tick form-control" title=<spring:message code="select"/>>
<option value="6" <c:if test="${_cfg.protocol==6}">selected</c:if>>TCP</option>
@@ -163,7 +163,7 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="whether_area_block"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_area_block"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="1"

View File

@@ -4,41 +4,44 @@
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="config_describe"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="config_describe"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="cfgDesc" value="${_cfg.cfgDesc}">
</div>
<div for="cfgDesc"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="key_word"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="key_word"/></label>
<div class="col-md-6">
<input class="form-control" type="text" name="cfgKeywords" value="${_cfg.cfgKeywords}">
</div>
<div for="cfgKeywords"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="block_type"/></label>
<div class="col-md-6">
<select name="action" class="selectpicker select2 form-control" readonly="readonly">
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="block_type"/></label>
<div class="col-md-6">
<select name="action" class="selectpicker select2 form-control" readonly="readonly">
<option value="1" <c:if test="${_cfg.action==1}">selected</c:if><c:if test="${_cfg.action!=1}">disabled="disabled"</c:if> ><spring:message code="block"/></option>
<option value="2" <c:if test="${_cfg.action==2}">selected</c:if><c:if test="${_cfg.action!=2}">disabled="disabled"</c:if> ><spring:message code="monitor"/></option>
<option value="5" <c:if test="${_cfg.action==5}">selected</c:if><c:if test="${_cfg.action!=5}">disabled="disabled"</c:if> ><spring:message code="block_white_list"/></option>
<option value="6" <c:if test="${_cfg.action==6}">selected</c:if><c:if test="${_cfg.action!=6}">disabled="disabled"</c:if> ><spring:message code="monitor_white_list"/></option>
<option value="7" <c:if test="${_cfg.action==7}">selected</c:if><c:if test="${_cfg.action!=7}">disabled="disabled"</c:if> ><spring:message code="block_monitor_white_list"/></option>
<option value="8" <c:if test="${_cfg.action==8}">selected</c:if><c:if test="${_cfg.action!=8}">disabled="disabled"</c:if> ><spring:message code="grey_list"/></option>
</select>
</select>
<%-- <input class="form-control" type="hidden" name="action" value="${_cfg.action}"> --%>
</div>
</div>
<div for="action"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="whether_area_block"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_area_block"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="isAreaEffective" value="1"
@@ -52,13 +55,14 @@
</label>
<%-- <input class="form-control" type="text" name="isAreaEffective" value="${_cfg.isAreaEffective}"> --%>
</div>
<div for="isAreaEffective"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="expression_type"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="expression_type"/></label>
<div class="col-md-6">
<label class="radio-inline">
<input type="radio" name="exprType" value="1"
@@ -71,11 +75,12 @@
><spring:message code="null"/>
</label>
</div>
<div for="exprType"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label class="control-label col-md-3"><spring:message code="match_method"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="match_method"/></label>
<div class="col-md-6">
<select name="matchMethod" class="selectpicker select2 form-control" title="--请选择--" >
<option value="0" <c:if test="${_cfg.matchMethod==0 }">selected</c:if>><spring:message code="substring_match"></spring:message></option>
@@ -84,13 +89,14 @@
<option value="3" <c:if test="${_cfg.matchMethod==3 }">selected</c:if>><spring:message code="exactly_match"></spring:message></option>
</select>
</div>
<div for="matchMethod"></div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="control-label col-md-3"><spring:message code="whether_hexbinary"/></label>
<label class="control-label col-md-3"><font color="red">*</font><spring:message code="whether_hexbinary"/></label>
<div class="col-md-6">
<select name="isHexbin" class="selectpicker select2 form-control" title=<spring:message code="select"/> >
<option value="0" <c:if test="${_cfg.isHexbin==0 }">selected</c:if>><spring:message code="case_insensitive_nohex"></spring:message></option>
@@ -98,7 +104,9 @@
<option value="2" <c:if test="${_cfg.isHexbin==2 }">selected</c:if>><spring:message code="case_sensitive_nohex"></spring:message></option>
</select>
</div>
<div for="isHexbin"></div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
@@ -106,6 +114,7 @@
<div class="col-md-6">
<input class="form-control" type="text" name="areaEffectiveIds" value="${_cfg.areaEffectiveIds}">
</div>
<div for="areaEffectiveIds"></div>
</div>
</div>
</div>

View File

@@ -28,6 +28,62 @@ $(function(){
$("#cancel").on("click",function(){
window.history.back();
});
$("#cfgFrom").validate({
rules: {
'cfgDesc':{
required:true
},
'keywords':{
required:true
},
'district':{
required:true
},
'isAreaEffective':{
required:true
},
'exprType':{
required:true
},
'matchMethod':{
required:true
},
'requestId': {
required: true,
}
},
messages: {
'cfgDesc':{
required:'<spring:message code="required"/>'
},
'keywords':{
required:'<spring:message code="required"/>'
},
'district':{
required:'<spring:message code="required"/>'
},
'isAreaEffective':{
required:'<spring:message code="required"/>'
},
'exprType':{
required:'<spring:message code="required"/>'
},
'matchMethod':{
required:'<spring:message code="required"/>'
},
'requestId': {
required: '<spring:message code="required"/>'
}
},
errorPlacement: function(error,element){
$(element).parents(".form-group").find("div[for='"+element.attr("name")+"']").append(error);
},
submitHandler: function(form){
//loading('onloading...');
form.submit();
},
errorContainer: "#messageBox",
});
});
</script>
</head>

View File

@@ -85,12 +85,15 @@ $(function(){
},
srcIp: {
required: true,
checkIp: true
},
srcIpMask: {
required: true,
},
srcPort: {
required: true,
max: 65535,
min: 0
},
srcPortMask: {
required: true,
@@ -103,6 +106,8 @@ $(function(){
},
dstPort: {
required: true,
max: 65535,
min: 0
},
dstPortMask: {
required: true,
@@ -137,6 +142,8 @@ $(function(){
},
srcPort: {
required: '<spring:message code="required"/>',
max: '范围0-65535!',
min: '范围0-65535!'
},
srcPortMask: {
required: '<spring:message code="required"/>',
@@ -149,6 +156,8 @@ $(function(){
},
dstPort: {
required: '<spring:message code="required"/>',
max: '范围0-65535!',
min: '范围0-65535!'
},
dstPortMask: {
required: '<spring:message code="required"/>',
@@ -175,6 +184,23 @@ $(function(){
},
errorContainer: "#messageBox",
});
$.validator.addMethod(
"checkIp",
function(value, element, params) {
var checkIp;
if ($("[name=ipType]").val() == 4) {
//checkIp = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
checkIp = /((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))/;
//} else if ($("[name=ipType]").val() == 6) {
// checkIp = /^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/;
} else {
checkIp = /\S+/;
}
return this.optional(element) || (checkIp.test(value) && (RegExp.$1 < 256 && RegExp.$2 < 256 && RegExp.$3 < 256 && RegExp.$4 < 256));
},
"请输入正确的IP!"
);
});
</script>
</head>

View File

@@ -21,6 +21,65 @@
</c:choose>
<script type="text/javascript">
$(function(){
$("#cfgFrom").validate({
rules: {
'cfgDesc':{
required:true
},
'cfgKeywords':{
required:true
},
'action':{
required:true
},
'isAreaEffective':{
required:true
},
'exprType':{
required:true
},
'matchMethod':{
required:true
},
'isHexbin':{
required:true
},
'requestId': {
required: true,
}
},
messages: {
'cfgDesc':{
required:'<spring:message code="required"/>'
},
'cfgKeywords':{
required:'<spring:message code="required"/>'
},
'action':{
required:'<spring:message code="required"/>'
},
'isAreaEffective':{
required:'<spring:message code="required"/>'
},
'exprType':{
required:'<spring:message code="required"/>'
},
'matchMethod':{
required:'<spring:message code="required"/>'
},
'isHexbin':{
required:'<spring:message code="required"/>'
}
},
errorPlacement: function(error,element){
$(element).parents(".form-group").find("div[for='"+element.attr("name")+"']").append(error);
},
submitHandler: function(form){
//loading('onloading...');
form.submit();
},
errorContainer: "#messageBox",
});
$("#save").on("click",function(){
$("#cfgFrom").attr("action","${ctx}/cfg/string/saveOrUpdateCfg");
$("#save").submit();