2010-11-03 48 views
3

jQuery的:JQuery AJAX调用 - 如何捕获响应JSON?

$(document).ready(function(){ 
$('#QuoteSearch').submit(function(){ 
    alert("in jquery"); 
    $.ajax({ 
     url: "ajaxJQuery", 
     type: "POST", 
     data: {username: $("#username").val(), password: $("#password").val()}, 
     dataType: "json", 
     error: function(){ 
      alert('Error'); 
     }, 
     success: function(data){ 
     alert('SUCCESS'); 
     alert(data); 
     } 
    }); 
    return false; 
}); 
}); 

<form>代码:

<form id="Quote Search"> 
    <textfield name="username" id="username" label="User Name" /> 
    <textfield name="password" id="password" label="Password" /> 
    <submit/> 
</form> 
<div id="coupon"> 
    Name = <property value="name" /> and Code = <property value="code" /> 
</div> 

Action类:

private String username; 
private String password; 
private String name = "Sheela"; 
private String code = "qwert"; 

public String execute() throws Exception { 
    System.out.println("inside execute"); 
    name = username; 
    code = password; 
    return SUCCESS; 
} 

问题:我如何访问JSON由Action类返回?我正在使用struts2-json-plugin,它会自动将Action类转换为JSON。我希望能够根据JSON响应更新div标签。

这是我在控制台中看到:

DEBUG (org.apache.struts2.json.JSONUtil) [JSON] 
{"code":"HELLO","name":"ABCD","password":"HELLO","username":"ABCD"} 

但我不知道如何在JSP捕获此。请帮忙。 gh

回答

4

来自服务器的JSON响应应位于成功处理程序中的data参数中。你看过那些东西吗?

+0

感谢您的回复。我没有意识到我可以访问json对象作为“data.name”...我试图parseJSON(数据),但数据已经是JSON,并导致错误。 Iam现在好了! – 2010-11-04 06:27:22