pr0nin
pr0nin

Reputation: 953

Changing the default title of confirm() in JavaScript?

Is it possible to modify the title of the message box the confirm() function opens in JavaScript?

I could create a modal popup box, but I would like to do this as minimalistic as possible. I would like to do something like this:

confirm("This is the content of the message box", "Modified title");

The default title in Internet Explorer is "Windows Internet Explorer" and in Firefox it's "[JavaScript-program]." Not very informative. Though I can understand from a browser security stand point that you shouldn't be able to do this.

Upvotes: 88

Views: 186065

Answers (8)

Ramon
Ramon

Reputation: 191

YES YOU CAN do it!! It's a little tricky way ; ) (it almost works on ios)

var iframe = document.createElement("IFRAME");
iframe.setAttribute("src", 'data:text/plain,');
document.documentElement.appendChild(iframe);
if(window.frames[0].window.confirm("Are you sure?")){
    // what to do if answer "YES"
}else{
    // what to do if answer "NO"
}

Enjoy it!

Upvotes: 10

Matt Clark
Matt Clark

Reputation: 31

You can always use a hidden div and use javascript to "popup" the div and have buttons that are like yes and or no. Pretty easy stuff to do.

Upvotes: 3

happylife
happylife

Reputation:

Yes, this is impossible to modify the title of it. If you still want to have your own title, you can try to use other pop-up windows instead.

Upvotes: 0

Slartibartfast
Slartibartfast

Reputation: 8805

I know this is not possible for alert(), so I guess it is not possible for confirm either. Reason is security: it is not allowed for you to change it so you wouldn't present yourself as some system process or something.

Upvotes: 0

Ben Scheirman
Ben Scheirman

Reputation: 40961

Don't use the confirm() dialog then... easy to use a custom dialog from prototype/scriptaculous, YUI, jQuery ... there's plenty out there.

Upvotes: 0

Brian R. Bondy
Brian R. Bondy

Reputation: 347236

Not possible. You can however use a third party javascript library that emulates a popup window, and it will probably look better as well and be less intrusive.

Upvotes: 5

samjudson
samjudson

Reputation: 56853

You can't unfortunately. The only way is to simulate this with a window.open call.

Upvotes: 0

Espo
Espo

Reputation: 41929

This is not possible, as you say, from a security stand point. The only way you could simulate it, is by creating a modeless dialog window.

There are many third-party javascript-plugins that you could use to fake this effect so you do not have to write all that code.

Upvotes: 93

Related Questions