如何将结果从动作传递到Struts2中的ajax

时间:2016-01-22 07:25:09

标签: jquery json ajax configuration struts2

我有以下操作,我想将名称传递给ajax响应。我怎么能这样做?

public class DatabaseAction extends ActionSupport{

    private String name;


    public void selectAll() {
        name="aa";

    }
    public void update() {

    }
    public void delete() {

    }
    public void add() {

    }

    public String getName() { return name; }

    public void setName(String name) { this.name = name;}  
}

我正在使用JQuery编写ajax:

$(document).ready(function(){
    $("#select").click(function() {
        $.ajax({
            url:"/db/database!selectAll.action",
            type:"POST",
            dateType:"JSON",
            success:function(name){
                alert(name);
            }
        });
    });
    $("#delete").click(function() {
        alert("delete");
    });
});

警告被调用,但显示空结果。

1 个答案:

答案 0 :(得分:0)

如果调用操作方法,则此方法应返回String值。此结果应具有名称,应配置为操作配置或全局配置。您可以阅读this答案,了解有关如何配置全局结果的更多信息。应将本地结果配置为操作配置。如果您需要有关本地结果的更多信息,请参阅this答案。

代码:

public String selectAll() {
    name="aa";
    return SUCCESS;
}

配置:

<action name="database" class="com.example.DatabaseAction" method="selectAll">
   <result type="json"/>
</action>