激動的我簡直語無倫次,不說了上代碼,用ajax實現form表單數據的請求,啦啦啦啦
html:
<form> <input name="userName" value="yyl"/> <input name="gender" value="F"/> </form>
ajax:
$(function (){ $.ajax({ url : "<%=request.getContextPath()%>/myTestFn.do?method=myAjax", type : "post", dataType : "json", data : $("#form").serialize(), success : function (data){ alert("name:"+data.name); }, error:function(){ alert("error"); } }); });
java:
package com.ulic.misp.newSaleWxProduct.controller; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.ulic.misp.pub.framework.log.Log; import com.ulic.misp.pub.framework.log.LogFactory; import com.ulic.misp.pub.util.JacksonUtils; import com.ulic.misp.wx.controller.BaseController; /** * @author v_yinyl * @date 2018-9-26 下午4:40:36 * @version 18.2B */ public class MyMonthCotroller extends BaseController { private final Log log = LogFactory.getLog(MyMonthCotroller.class); public void myAjax(HttpServletRequest request, HttpServletResponse response) throws Exception { log.info("11111111111"); String name = request.getParameter("userName"); String gender = request.getParameter("gender"); Map<String ,String> map = new HashMap<String, String>(); map.put("name",name); map.put("gender",gender); response.getWriter().println(JacksonUtils.toJson(map)); return; } }
不知道為什么,一直演示不成功,這讓我非常難受......
2018/09/26
nndt,終於演示成功了,
排查步驟:1,ajax的書寫是否正確 $.ajax({ }); 2,java代碼中接收數據的屬性與form里面的name屬性是否一致 3,檢查ajax請求的方法(myAjax)是否被攔截
,4,發現步驟1和步驟二都沒有問題,但是請求ajax的時候還是error,那么重建controller,問題就解決了,其實一點也不神奇因為
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
上面這兩個路徑才是HttpServletRequest;HttpServletResponse;的正確路徑,導錯的話,整個controller都不能正常使用
拓展:
import org.springframework.web.servlet.ModelAndView;
ModelAndView的路徑如果導錯也不能正常訪問頁面
