前台,傳參數時,將數組對象轉換成json串,后台java收到后用 JSONArray.fromObject 轉成集合。
前台js:
var params = {"FileNameList": JSON.stringify(fileNames)};
前台正則校驗:
var reg = /^[\u4e00-\u9fa5A-Za-z0-9\-]{1,50}.txt$/; //包含中文、字母大小寫、數字
if (!reg.test(name)) {
layer.alert(name+" 格式錯誤,請重新輸入!");
return;
}
后台java:
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
//獲取參數
List<String> fileNameList = JSONArray.fromObject(requestMap.get("FileNameList"));
//用正則校驗:
//后台校驗格式
String pattern = "^[\\u4e00-\\u9fa5\\w\\-]{1,50}.txt$";
for (String name : fileNameList) {
boolean isMatch = Pattern.matches(pattern, name);
if (!isMatch) {
reMap.put("msg", name+" 格式錯誤,請移除后重新輸入!");
reMap.put("code", "3");//業務邏輯異常
//返回前台
returnFront(response, reMap);
return;
}
}