0

我在一个调用struts2动作的jsp中有这个函数。但它调用了两次。为什么?

JSP

    $("#inputField").change(function()
    {
        var inputField= $("#inputField").val();
        if(inputField !== '')
        {
            var url = 'myUrl';
            $.getJSON(url, function(retVal)
            {
                $.each(retVal.retList, function(index, element)
                {
                    console.log(element.name);
                });  
            });
        }
    });

Struts2 Action

public String getJSON() throws Exception
{
     System.out.println("Method Executed");
}

当这个ajax电话返回时,我得到了这个

Method Executed
Method Executed

我怎样才能让它只执行一次?

4

2 回答 2

1

您可能会使用 JSON 插件,它会调用所有以“get”开头的方法,以尝试将它们序列化以进行输出。尝试重命名您的方法名称

于 2013-09-26T07:42:59.787 回答
0

确保您只注册一次“更改”事件。双 ajax 调用的原因可能是您在代码中添加了两次更改侦听器。看看这里

于 2012-08-28T07:34:47.923 回答