将json对象从jsp发送到servlet时没有响应

时间:2017-03-08 16:17:18

标签: java json jsp servlets

这不起作用。可能是什么错误?我希望以json到servlet的形式从客户端获取名称和密码。

的index.jsp

    <script src=”http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js”>
    </script>
    <script type="text/html">
        function callFun(){
            var n = document.getElementById('n1').value;
            var p = document.getElementById('n2').value;
            var myData = {"mydata" :{"name":n,"password":p}};

            $.ajax({
                type:'POST',
                url:'/Page',
                data:{jsonData:JSON.stringify(myData)},
                dataType:'json',

                success:function(data){
                    alert(json["resultText"]);
                }
            });
        }
    </script>

    <form>
        Name:<input type="text" name="nam" id="n1"><br>
        Password:<input type="password" name="password" id="n2"><br>
        <input type="button" onclick="callFun()" value="submit">
    </form>

这是servlet类Page.java

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    JSONObject newObj = new JSONObject();
    try(){
        String json = request.getParameter("jsonData");
        JSONObject jsonData = (JSONObject) JSONValue.parse(json);
        String name = (String) jsonData.get("name");
        System.out.println(name));
    }catch(JSONException e){
        e.printStackTrace();
    }
}

1 个答案:

答案 0 :(得分:0)

您的意思是myTbl = defaultTbl;

另请注意,您使用的是旧版本的Jquery AJAX。检查official Jquery AJAX guide以获取当前版本。在当前版本中,您可以使用 .fail 调用来获取错误消息

revertToDefault()