2017-03-08 8 views
-1

これは機能していません。何がエラーなのでしょうか? jsonとサーブレットの形でクライアント側から名前とパスワードを取得したかったのです。jsonオブジェクトをjspからサーブレットに送信中に応答しません。

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> 

これは、サーブレットクラス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(); 
    } 
} 

答えて

0

はまた、あなたはjQueryのAJAXの古いバージョンを使用している注意してくださいalert(data["resultText"]);

をもしかしてです。現在のバージョンについてはofficial Jquery AJAX guideを確認してください。現在のバージョンでは、それは助けにはならなかったエラーメッセージ

var request = $.ajax({ 
    url: "script.php", 
    method: "POST", 
    data: { id : menuId }, 
    dataType: "html" 
}); 

request.done(function(msg) { 
    $("#log").html(msg); 
}); 

request.fail(function(jqXHR, textStatus) { 
    alert("Request failed: " + textStatus); //Dipslay the error here 
}); 
+0

を取得するために .failコールを使用することができます。どちらもエラーを示していません。 jsonObjectを使用している方法は正しいですか? String json = request.getParameter( "jsonData"); JSONObject jsonData =(JSONObject)JSONValue.parse(json); String name =(String)jsonData.get( "name"); –

+0

どのようなJsonライブラリを使用していますか? – lonelyloner

+0

私はシンプルなjsonを使っています –

関連する問題