Jira问题收集器代码在嵌入html时有效,但不在单独的javascript文件中

时间:2017-09-21 14:30:48

标签: javascript jquery html jira

我为我的网页创建了一个jira问题收集器。我想按下按钮时激活此发行者。 当我在html中嵌入以下代码时,效果很好:

<a href="#" id="Trigger" class='btn btn-primary'>Jira Issue</a>
<script type="text/javascript" src="htpps...."></script>
<script type="text/javascript">window.ATL_JQ_PAGE_PROPS =  {
        "triggerFunction": function(showCollectorDialog) {
         jQuery("#Trigger").click(function(e) {
         e.preventDefault();
         showCollectorDialog();
         });
}};</script>

但是每次加载页面时都会提示输入用户名和密码。我只想在单击Jira Issue按钮时提示。 所以我在js文件中插入了以下代码:

$(document).ready(function() {
$('#Trigger').click(function (event) {
   jQuery.ajax({
      url: "https:....",
      type: "get",
      cache: true,
      dataType: "script"
   });

window.ATL_JQ_PAGE_PROPS =  {
  "triggerFunction": function(showCollectorDialog) {
   jQuery("#Trigger").click(function(e) {
    e.preventDefault();
    showCollectorDialog();
     });
    }};
   });
  });

但是这样它就显示了加载图标,而无需打开jira模态窗口。 我使用的是jquery-3.2.1.min.js。我也尝试在没有$(document).ready(function()但没有成功的情况下运行代码。当我按下按钮时,控制台输出形成浏览器调试器如下:

 jquery-3.2.1.min.js:4 Uncaught TypeError: a.indexOf is not a function
 at r.fn.init.r.fn.load (jquery-3.2.1.min.js:4)
 at ATL_JQ.IssueDialog.show (com.atlassian.jira.collector.plugin.jira-issue-
 collector-plugin:issuecollector-embededjs.js?locale=en-
 US&collectorId=b936f358:3)
 at showDialog (com.atlassian.jira.collector.plugin.jira-issue-collector-
 plugin:issuecollector-embededjs.js?locale=en-US&collectorId=b936f358:3)
 at HTMLAnchorElement.<anonymous> (main.js:14)
 at HTMLAnchorElement.dispatch (jquery-3.2.1.min.js:3)
 at HTMLAnchorElement.q.handle (jquery-3.2.1.min.js:3)

第一个可能是由于自jQuery 1.8以来不推荐使用的jquery事件别名,如.load,.unload或.error,但我的代码省略了这些别名。行main.js:14也是代码showCollectorDialog();
   我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

这仍然是个问题。

您可以将JQuery版本降级为2.2.4进行解析