How do I close an Inline Dialog from inside the callback function?

I have an InlineDialog that I declare like this:

var inlineDialog = AJS.InlineDialog(AJS.$(this), "dialog-" + appId, function(content, trigger, showPopup) {

                var self = this;

                content.html(Mustache.render(MUSTACHE_TEMPLATES['reset-spam-key-warning'], {}));

    

                // Act upon the delete button

                content.find(".actions .delete-button").click(function(event) {

                    event.preventDefault();

                    console.log("Clicked delete.");

    

                });

    

                showPopup();

            });

I want to write something so that I can close the dialog when the delete button is clicked. How do I make that happen? The problem is that I really don't have access to an inlineDialog close function from in there.

1 answer

1 accepted

1 vote
Accepted answer

here's how you cheat:

var inlineDialog;
var closer = function() {
    if (inlineDialog) {
        inlineDialog.hide();
    }
}
inlineDialog = AJS.InlineDialog(..., ..., function(content, trigger, showPopup) {
    // ...
    content.find(...).click(function(e) {
        closer();
    });
});

Nice cheat. Works a charm. I was in the process of trying something similar.

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Tuesday in United States

Topic Tuesday: What's your favorite topic?

Good morning All, Our goal is to get you into the habit of while enjoying your favorite morning drink you are checking the NOVA "space" for topics and comments. Your input is really needed and...

57 views 4 0
View post

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you