call JavaScript from web item link doesn't work sometimes?

harainye May 6, 2022

Hello Community,

This is my plugin application description:

I have a web-item button,I need to click the button to trigger the REST I wrote myself and refresh the current page.
So I refer to JavaScript to listen for the button.Here is my code snippet:

atlassian-plugin.xml:

<web-item key='top-nav-bar-sign-in' name='top-nav-bar-sign-in' section='system.top.navigation.bar' weight='18'>
<label key="sign.in.top.navigation.bar.title"/>
<condition class="cn.com.nd.jira.condition.SignInCondition"/>
<link linkId="top-nav-bar-sign-in-link"/>
</web-item>

js:

require(['jquery'], function ($) {

$('#top-nav-bar-sign-in-link').on('click', function () {
$.ajax({
type: "GET",
url: "/rest/signIn/1.0/sign/in",
contentType: "application/json"
}).done(function () {
return false;
// window.location.reload();
});
});

});

Js always runs, but sometimes the click event does not execute,This rather confuses me.

 

 

2 answers

1 accepted

0 votes
Answer accepted
harainye May 25, 2022

The final solution is,Bind the click event after the page has loaded.

$(function () {
$('#linkId').on('click', function (event) {
// do something
}
}
0 votes
harainye May 6, 2022

When I click my custom button, my JS is not triggered: the page is refreshed first, I guess, the page is refreshed first, so my JS is invalid  

Suggest an answer

Log in or Sign up to answer