如何在Atlassian Jira 4.4插件中包含Web资源?
Atlassian的-plugin.xml中:
<web-resource key="statistics-resources" name="statistics">
<resource type="download" name="statistics.js" location="js/statistics/statistics.js"/>
<dependency>jira.webresources:jira-global</dependency>
<context>com.cs.jira.plugins.statistics-resources</context>
</web-resource>
statistics.js:
$("#projects").change(function() {
$(location).attr('href', "/jira/secure/StatisticsModuleAction!project.jspa?project=" + $(this).find("option:selected").text());});
在Velocity模板中包含资源:
$webResourceManager.requireResourcesForContext("com.cs.jira.plugins.statistics-resources")
当我尝试从我的statistics.js调用javascript函数时,我收到此错误:
未捕获的TypeError:对象[对象窗口]的属性'$'不是函数
然后我尝试包含外部jQuery库:
<web-resource key="statistics-resources" name="statistics">
<resource type="download" name="jquery-1.8.2.js" location="js/lib/jquery-1.8.2.js"/>
<resource type="download" name="statistics.js" location="js/statistics/statistics.js"/>
<dependency>jira.webresources:jira-global</dependency>
<context>com.cs.jira.plugins.statistics-resources</context>
</web-resource>
我在batch.js中遇到了另一个错误:
未捕获TypeError:对象[object Object]没有方法'handleAccessKeys'
如何正确包含我的资源?
答案 0 :(得分:2)
据我所知,您已正确包含了统计资源。您的问题是Jira通过与jquery标准不同的引用提供对jquery的访问。如果您在javascript代码中将$
替换为AJS.$
,则应解决您的问题。
答案 1 :(得分:0)
employment
应该解决你的问题并且总是通过AJS引用$ function。$由Joe Douglas回答。