function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Sagar104Sagar104 

Im a newbie , On click of a custom button i need message to popup

Im a newbie , On click of a custom button i need message to popup like xyz , but it shoul have ok or cancel.. If ok then it should proceed to the  operation , if cancell then just no action
Best Answer chosen by Sagar104
Lokesh KumarLokesh Kumar
HI Sayed,

How about this(http://www.screencast.com/t/MmawCbPc) ? If you like that then here you go:

1. Go to Setup | Customize | <Standard Object Name> | Buttons, Links & Actions and then Click 'New Button or Link' or if it is a Custom Object then go to Setup | Create | Objects and then click on the Custom Object name. Scroll down to find the section 'Buttons, Links, and Actions' and then click  'New Button or Link'.
2. Give it the Label: <A Valid Name>.
3. Display Type: Detail Page Button.
4. Behavior: Execute JavaScript.
5. Content Source: OnClick JavaScript.

Here is the JS:
{!REQUIRESCRIPT('//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js')}
{!REQUIRESCRIPT('//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js')}
try{
  jQuery(function() {
    /*Append the jQuery CSS CDN Link to the Head tag.*/
    jQuery('head').append('<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/start/jquery-ui.css" type="text/css" />');
    
    /*Create the HTML(DIV Tag) for the Dialog.*/
    var html = 
      '<div id="dialog" title="Go Home"><p>Do you want to go to the Home tab ?</p></div>';
    
    /*Check if the Dialog(DIV Tag) already exists if not then Append the same to the Body tag.*/
    if(!jQuery('[id=dialog]').size()){
      jQuery('body').append(html);
    }    

    /*Open the jQuery Dialog.*/ 
    jQuery( "#dialog" ).dialog({
      autoOpen: true,
      modal: true,
      show: {
        effect: "bounce",
        duration: 1000
      },
      hide: {
        effect: "bounce",
        duration: 1000
      },
      buttons: {
        "Continue": function() {
          location.replace('/home/home.jsp');
          jQuery( this ).dialog( "close" );
        },
        Cancel: function() {
          jQuery( this ).dialog( "close" );
        }
      }
    });
  }); 
}
catch(e){
alert('An Error has Occured. Error: ' + e);
}
Save the same!

7. Now, just open any Record, click Edit Layout at top-right..
9. From the Page Host, select Buttons list and drag the new button onto the Page Layout.
10. Save and you are done!

Thanks ! 
Lokesh

All Answers

Lokesh KumarLokesh Kumar
HI Sayed,

How about this(http://www.screencast.com/t/MmawCbPc) ? If you like that then here you go:

1. Go to Setup | Customize | <Standard Object Name> | Buttons, Links & Actions and then Click 'New Button or Link' or if it is a Custom Object then go to Setup | Create | Objects and then click on the Custom Object name. Scroll down to find the section 'Buttons, Links, and Actions' and then click  'New Button or Link'.
2. Give it the Label: <A Valid Name>.
3. Display Type: Detail Page Button.
4. Behavior: Execute JavaScript.
5. Content Source: OnClick JavaScript.

Here is the JS:
{!REQUIRESCRIPT('//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js')}
{!REQUIRESCRIPT('//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js')}
try{
  jQuery(function() {
    /*Append the jQuery CSS CDN Link to the Head tag.*/
    jQuery('head').append('<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/start/jquery-ui.css" type="text/css" />');
    
    /*Create the HTML(DIV Tag) for the Dialog.*/
    var html = 
      '<div id="dialog" title="Go Home"><p>Do you want to go to the Home tab ?</p></div>';
    
    /*Check if the Dialog(DIV Tag) already exists if not then Append the same to the Body tag.*/
    if(!jQuery('[id=dialog]').size()){
      jQuery('body').append(html);
    }    

    /*Open the jQuery Dialog.*/ 
    jQuery( "#dialog" ).dialog({
      autoOpen: true,
      modal: true,
      show: {
        effect: "bounce",
        duration: 1000
      },
      hide: {
        effect: "bounce",
        duration: 1000
      },
      buttons: {
        "Continue": function() {
          location.replace('/home/home.jsp');
          jQuery( this ).dialog( "close" );
        },
        Cancel: function() {
          jQuery( this ).dialog( "close" );
        }
      }
    });
  }); 
}
catch(e){
alert('An Error has Occured. Error: ' + e);
}
Save the same!

7. Now, just open any Record, click Edit Layout at top-right..
9. From the Page Host, select Buttons list and drag the new button onto the Page Layout.
10. Save and you are done!

Thanks ! 
Lokesh
This was selected as the best answer
Sagar104Sagar104
Hi Lokesh..

There is already a button.. with help i have implemented as required,

but the problem here is on the popup but there is OK and Cancel..if i click ok the required page is opened(operation executed)
If i click cancel.. then also the page is opened( which is worng)..kindly help me why the Cancell button is not working (operation terminated)..below is the code which is implimented.
____________________________________xxxxx___________________________
confirm("Are you sure you want to prepare hours for billing?\nFirst confirm the billable hours by clicking Service Report.\nClick 'OK' to continue or 'Cancel' to go back."); 
window.open('/apex/Invoice_Report?id={!SVMXC__Service_Order__c.Id}', '_blank');

_________________________________________xxxx_______________________________

Awaiting your rply..