【问题标题】:AJAX call from Velocity template来自 Velocity 模板的 AJAX 调用
【发布时间】:2012-02-21 07:26:09
【问题描述】:

我有一个测试网页,它使用 jQuery 和 AJAX 调用 ASMX 网络服务并返回 JSON 格式的客户列表。然后,返回的数据会填充标签的自动完成列表。在测试环境中一切正常。我现在正试图让相同的代码在 JIRA 中工作,这样我就可以使用 AJAX 调用将返回的客户列表填充自定义字段,但是 AJAX 调用不起作用。在我的速度模板文件中,我有以下 AJAX 调用代码:

<script>
jQuery("#customfield_10000").autocomplete({
        source: function (request, response) {
            $.ajax({
                type: "POST",
                url: "http://myserver/jiraservice/ajaxservice.asmx/GetCustomers",
                cache: false,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: "{inputValue:\"" + request.term + "\"}",
                success: function (data) {
                    response($.map(data.d, function (item) {
                        return {
                            label: item,
                            value: item
                        }
                    }));
                }
            });
        },
        minLength: 2
});
</script>

如果有人能指出如何从 Velocity 模板正确执行 AJAX 调用,那就太好了。

提前致谢!

【问题讨论】:

    标签: jquery ajax jira velocity jira-plugin


    【解决方案1】:

    我通常使用这种代码:

            AJS.$.get('/rest/api/latest/issue/' + release, {}, function(data) {
                var fields = data["fields"];
                var summary = fields["summary"]["value"];
    

    然后确保 AJS 在 atlassian-plugin.xml 中存在

    问题选项卡使用的 JavaScript 和 CSS 文件。

    <dependency>com.atlassian.auiplugin:ajs</dependency>
    <dependency>jira.webresources:jira-global</dependency>
    
    <resource name="issuetabs.js" type="download" location="js/issuetabs.js" />
    <resource name="issuetabs.css" type="download" location="css/issuetabs.css" />
    

    并确保使用 WebResourceManager 包含资源

    【讨论】:

    • 嗨,马特。所以我假设我将依赖项添加到 pom.xml?我需要从某个地方下载 issuetabs.js 和 issuetabs.css 吗??
    • 目前我有这个:&lt;web-resource key="autocomplete" name="JqueryAutocomplete"&gt; &lt;dependency&gt;com.atlassian.auiplugin:ajs&lt;/dependency&gt; &lt;dependency&gt;jira.webresources:jira-global&lt;/dependency&gt; &lt;resource name="issuetabs.js" type="download" location="js/issuetabs.js" /&gt; &lt;resource name="issuetabs.css" type="download" location="css/issuetabs.css" /&gt; &lt;/web-resource&gt;
    • 我现在是否需要将这些资源添加到 Java 代码中的“WebResourceManager”实例中,以便可以在 Velocity 模板中访问这些资源?
    • 将上面的资源代码添加到 atlassian-plugin.xml 后,我的插件不再加载到 JIRA...
    猜你喜欢
    • 2012-02-03
    • 2014-03-10
    • 2011-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-14
    • 2023-03-10
    相关资源
    最近更新 更多