grails - 未配置 javascript 提供程序

标签 grails grails-2.2

更新:我已将此错误隔离到在此选择中注册 onchange 事件。如果我删除 onchange,页面将无错误地呈现,否则我会得到 没有 javascript 提供程序 错误。

<g:select optionKey="id" optionValue="name" name="course" id="course"
   from="${com.TourneyCard.Course.list(sort:'name')}" value="${homeCourse.id}"
   onchange="${remoteFunction(controller:'foursome', action:'ajaxGetTeesJSON',
     params:'\'id=\' + escape(this.value)', 
     onSuccess:'updateTees(data);')}">
</g:select>

由于各种原因,我想使用资源插件而不是 jQuery 插件来包含 jQuery。它大部分都在工作,但我有一个不会呈现的页面,而是发出错误 未配置 javascript 提供程序 .

我的 ApplicationResources.groovy 定义了 jquery:
jquery {
    resource url: 'js/jquery/jquery-1.9.1.min.js', disposition: 'head'
}

我的 main.gsp 布局如下所示:
<head>
    <g:layoutHead/>
    <g:javascript library="jquery"/>
    <r:require module="jquerymobile"/>
    <r:layoutResources />
</head>

发出提供者未配置错误的页面如下所示:
<head>
    <meta content="main" name="layout">
    <r:require modules="jqmdatebox,jqmgrid960,updateTees"/>
    ....
</head>
<body>
    ....
    <g:javascript>
        var zselect = document.getElementById('tee')
        var zopt = zselect.options[zselect.selectedIndex]
    </g:javascript>
</body>

最佳答案

由于您手动设置 JQuery 资源,因此无需设置:

<g:javascript library="jquery"/>

相反,只需要你的模块:
<r:requires module="jquery, jquerymobile"/>

编辑

查看您的新信息,我认为您的问题在于 remoteFunction方法。因为它需要知道您正在使用哪个 javascript 库。尝试添加 <g:setProvider library="jquery"/>到您的页面。

关于grails - 未配置 javascript 提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18344660/

相关文章:

unit-testing - Grails单元测试用例显示已完成0个Spock测试,0个失败

database - 检查数据库连接的有效方法?

Grails:如何定义在 View 上呈现但不持久的域属性?

grails - Grails “Data source name not found and no default driver specified”错误

ajax - Grails中的AJAX搜索

grails - 在 Grails 中应用 Groovy 扩展会为 String#toBoolean() 产生 MissingMethodException

grails - Grails:比较两个未保存的域类对象总是返回false

Grails 命名查询 : find parents of child A and child B

grails - Webflow:是否可以在流之间切换?