Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
迁移到wicket 1.5-jQuery、jGrowl和ajax问题_Jquery_Ajax_Wicket_Wicket 1.5 - Fatal编程技术网

迁移到wicket 1.5-jQuery、jGrowl和ajax问题

迁移到wicket 1.5-jQuery、jGrowl和ajax问题,jquery,ajax,wicket,wicket-1.5,Jquery,Ajax,Wicket,Wicket 1.5,在将wicket从1.4迁移到wicket 1.5之后,我发现了一个非常奇怪的问题——我的ajax“字段”不起作用,并且我的jQuery和jGrowl库存在错误(通过firebug发现) 阅读后,我更改了包含JS库的*.java文件(我包括一个“main”类): 在我的一个页面上,我确实包含了这些库(再次使用firebug检查),但我确实收到了以下错误: TypeError:$.jGrowl不是函数 添加(窗口,“domready”,函数(事件){ $.jGrowl('close');;}) T

在将wicket从1.4迁移到wicket 1.5之后,我发现了一个非常奇怪的问题——我的ajax“字段”不起作用,并且我的jQuery和jGrowl库存在错误(通过firebug发现)

阅读后,我更改了包含JS库的*.java文件(我包括一个“main”类):

在我的一个页面上,我确实包含了这些库(再次使用firebug检查),但我确实收到了以下错误:

TypeError:$.jGrowl不是函数
添加(窗口,“domready”,函数(事件){ $.jGrowl('close');;})

TypeError:$(…)为空
$(“#middlebar>.menu>li>a”)。单击(函数(){

TypeError:$(…)。绑定不是函数 …t.add(窗口,“加载”,函数(事件){$(文档).bind('keydown', 功能(e)

至于我的ajax字段,它们不起作用(当我提交字段时,什么也没有发生)。我注意到这个项目正在使用AjaxRequestTarget(meaby我迁移错了?)。不幸的是,我对ajax如何与wicket一起工作知之甚少,我只能找到这个问题,我认为这是创建ajax的“问题”

我不知道我还应该包括什么,所以如果你认为这个问题遗漏了什么,请让我知道。注意,在wicket 1.4中,所有的想法都是正确的


我还注意到,
Wicket.Event.add(窗口,“domready”,函数(Event){$.jGrowl('close');})
在包含jGrowl库之前呈现在我的页面上,在1.4之后呈现。

尝试添加
super.renderHead(response)
,作为方法的第一行

@Override
    public void renderHead(IHeaderResponse response) {
        // JQUERY
        //val header = JSLib.getHeaderContribution(VersionDescriptor.alwaysLatest(Library.JQUERY));
        //header.renderHead(response);
        //val header1 = JSLib.getHeaderContribution(VersionDescriptor.alwaysLatest(Library.JQUERY_UI));
        //header1.renderHead(response);
        response.renderJavaScriptReference(new CommonResourceRef("js/jquery-1.4.2.min.js"));
        response.renderJavaScriptReference(new CommonResourceRef("js/jquery-ui-1.8.4.custom.min.js"));

        // MSDROPDOWN
        response.renderJavaScriptReference(new CommonResourceRef("js/jquery.msdropdown.js"));
        response.renderJavaScriptReference(new CommonResourceRef("js/languageDropDown.js"));
        response.renderCSSReference(new CommonResourceRef("css/msdropdown.css"));

        // JGROWL
        response.renderJavaScriptReference(new CommonResourceRef("js/jquery.jgrowl_minimized.js"));
        response.renderCSSReference(new CommonResourceRef("css/jquery.jgrowl.css"));
        response.renderCSSReference(new CommonResourceRef("css/jgrowl-page.css"));     
        response.renderOnLoadJavaScript("$(document).bind('keydown', function(e) { return submitButtonOnEnter(e); });");

        // disables warning on page leaving with displayed modal (if unloadConfirmation == false)
        if (!unloadConfirmation)
            response.renderOnLoadJavaScript("Wicket.Window.unloadConfirmation = false;");
    }
public class PageAjaxEventBehavior extends AjaxEventBehavior {
[...]
    public void renderHead(IHeaderResponse response) {
        CharSequence handler = Strings.replaceAll(Strings.escapeMarkup(getEventHandler().toString()), "'", "'");
        String jqueryCall = String.format("$.ajax({ url: '%s', success: function(data) { $('.result').html(data); alert('Load was performed.'); } });",
                                          getCallbackUrl());

        String eventHandler = String.format("$(window).bind(\"%s\", function() {%s;});", getEvent(), jqueryCall);

        if (!closed)
            JavaScriptUtils.writeJavaScript(RequestCycle.get().getResponse(), eventHandler);

        closed = true;
    }
[...]
}