使用DWR将JQuery对象传递给Java方法

时间:2013-05-15 10:18:59

标签: java javascript jquery dwr

我想使用DWR将JQuery对象var $this = $(this);传递给Java方法,我做了类似的事情:

Javascript方法

function handlePieces($square) {
 $square.data('jumped').remove();
 if(player == 1){

        var user = $("#secondPlayer").val();
        DwrUtils.removeJumped(user, $square);
 }else if(player == 2){
        var user = $("#firstPlayer").val();
        DwrUtils.removeJumped(user, $square);
 }
}

DwrUtils类中的My Java方法

@RemoteMethod
public void removeJumped(String user, String square){
    UserLoginScriptSessionFilter filter = new UserLoginScriptSessionFilter(
            user);
    ScriptMethodInvoker invoker = new ScriptMethodInvoker("removeJumped",square);
    Browser.withAllSessionsFiltered(filter, invoker);

}

我甚至尝试在方法参数中使用Object square而不是String square,但它仍然无效。

我应该以某种方式将其转换为Json格式,或者我该怎么做?我是DWR的新手,所以我不知道如何解决它。

1 个答案:

答案 0 :(得分:1)

要么正方形应该是字符串或json对象,DWR才能工作。

因此将$ square转换为json对象,并在Remote方法中指望方形