javascript - 如何从 JavaScript Apache Wicket 调用 Java 函数

标签 javascript html ajax wicket wicket-1.6

我在很多地方研究过这个主题并找到了一些方法。在这种特殊情况下,我使用了 https://cwiki.apache.org/confluence/display/WICKET/Calling+Wicket+from+Javascript文章作为引用。

我在 Java 中做了什么,

public class HomePage extends WebPage {
    private static final long serialVersionUID = 1L;

    public HomePage(final PageParameters parameters) {
        super(parameters);


        final AbstractDefaultAjaxBehavior behave = new AbstractDefaultAjaxBehavior() {
            protected void respond(final AjaxRequestTarget target) {
                target.add(new Label("foo", "Yeah I was just called from Javascript!"));
            }

            public void renderHead(Component component,IHeaderResponse response){

                String componentMarkupId = component.getMarkupId();
                String callbackUrl = getCallbackUrl().toString();

                response.render(JavaScriptHeaderItem.forScript("var componentMarkupId='"+componentMarkupId+"'; var callbackUrl='"+callbackUrl+"';","values"));
            }
        };

        add(behave);

    }

}

和我的 HomePage.html,

<!DOCTYPE HTML>
<html>
<body>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script type="text/javascript">
    $(function() {
        var wcall = Wicket.Ajax.get({ u: '${callbackUrl}' + '' });
        alert(wcall);
    });
</script>
</body>
</html>

我尝试做的是使用我已初始化的变量调用 get ajax 方法。但是当我的页面加载时,在 Firebug 控制台中它说,

ReferenceError: Wicket is not defined
[Break On This Error]    

var wcall = Wicket.Ajax.get({ u: '${callbackUrl}' + '' });

这里出了什么问题?

有没有其他好的方法可以从 Javascript 调用 Java 函数?

最佳答案

您需要将 wicket javascript 添加到页面,通常是通过确保重写方法(如 renderHead)调用 super.renderHead。

关于javascript - 如何从 JavaScript Apache Wicket 调用 Java 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17454519/

相关文章:

java - 从 Http Servlet 请求 header 中读取浏览器/客户端时间

html - CSS 选择器片段支持

javascript - 获取 anchor 的特定文本 - jquery

javascript - 完成所有ajax查询后执行一个函数

javascript - jQuery 将 CSS 类添加到动态创建的元素

javascript - jQuery/JavaScript 变量作用域

javascript - 如何根据 Ember 中的变量获取数组内对象的值?

javascript - 为什么div里面溢出: hidden; div not taking full width of it's content?

html - ASP.NET Telerik 网格设计

javascript - 无法通过 ajax jQuery 将信息发送到 PHP 页面