自己寫的代碼太少,有時候前后台傳值還寫的不是很熟練,現在總結一下,加深下印象。
1.jquery的Ajax傳值
----》前台到后台
期望功能:把前台用戶輸入的信息保存在數據庫里。
前台jsp代碼:
function saveUserInfo(){
var params = {};//定義一個數組
var userNO = jq("#userNO").val();//把前台頁面上的值都賦予一個變量
var userName = jq("#userName").val();
var phoneNumber = jq("#phoneNumber").val();
params["userNO"] = userNO ;//把這些變量都存在這個數組里
params["userName"] = userName;
params["phoneNumber"] = phoneNumber;
jq.ajax({
type : "post",
url : "<%=basePath%>personalSetting/personalSettingSaveAll.do",//找到action里相應的方法
data : params, //把數組的值賦給data,把上面的param改為data,這里就能直接去掉
dataType : "text",//根據數據類型選擇text、jason等
success : function(data) {
alert(msg); //msg可以在后台Action配置,也可以在這里直接寫提示信息
},
error : function(data) {
alert("msg");
}
});
}
}
后台Action代碼:
@SuppressWarnings({ "unchecked", "unused", "rawtypes" })
@RequestMapping(value = "/personalSetting/personalSettingSaveAll.do", method = RequestMethod.POST)
public void saveAll(ModelMap model, HttpServletRequest request, HttpServletResponse response) throws Exception {
response.setCharacterEncoding("UTF-8");
HttpSession session = request.getSession();
String userNO = request.getParameter("userNO")+"";
String userName = request.getParameter("userName")+"";
String phoneNumber = request.getParameter("phoneNumber")+"";
PersonalSettingEntity pSE = new PersonalSettingEntity();
if(!("".equals(userNO))||"".equals(userName )||"".equals(phoneNumber ))){ //如果都不為空
pSE.setUserNO(userNO);
pSE.setUserName(userName);
pSE.setPhoneNumber(phoneNumber);
PersonSettingService.saveProcessSetting(pSE);
msg = "保存成功";
}else{
msg = "填寫不完整"; //可以在前台校驗,這里為了舉例子
}
response.getWriter().print(msg); //這里的msg是text數據,所以前台數據類型是text。
}
----》后台到前台
期望功能:把數據庫里的用戶信息顯示到前台頁面。
后台Action代碼:
@SuppressWarnings({ "unchecked", "unused", "rawtypes" })
@RequestMapping(value = "/personalSetting/personalSettingInitAll.do", method = RequestMethod.POST)
public void qureyAll(ModelMap model, HttpServletRequest request, HttpServletResponse response) throws Exception {
response.setCharacterEncoding("UTF-8");
HttpSession session = request.getSession();
String userId = request.getSession().getAttribute("currentUserId").toString();
PersonalSettingEntity pSE = PersonSettingService.getPersonalSetting(Long.valueOf(userId));
response.getWriter().print(JSONArray.fromObject(pSE).toString());
}
前台jsp代碼:
function get(){
jq.ajax({
type : "post",
url : "<%=basePath%>personalSetting/personalSettingInitAll.do",
dataType : "json",
success :function (data) {
var bean;
jq.each(data,function(index){
bean = data[index];
jq("#userNO").attr("value",bean.userNO);
jq("#userName").attr("value",bean.userName);
jq("#phoneNumber").attr("value",bean.phoneNumber);
}
},
error :function (data){
alert("系統出錯!");
}
});
}
