confirm on an on submit script

Brian Lancaster
Tera Sage

I'm trying to force a confirm with an on submit script.   It is displaying that popup but no matter if the user hits ok or cancel it will still proceed to checkout or add the item to the cart even thought I am returning false.   Any ideas on why I am seeing this behavior?

function onSubmit() {

  //Type appropriate comment here, and begin script below

  var req = g_form.getValue('requesttype');

  if (req == 'New / Modify Account'){

  var role = g_form.getValue ('role');

  if (role == 'Due Diligence Data Management (no course required)' ||

  role == 'Due Diligence TMF (no course required)'){

  return true;

  }

  else {

  var training = new GlideRecord ('u_trackwise_roles');

  training.addQuery('u_role', role);

  training.query(function(training){

  if (training.next()){

  var conf = confirm('Have you completed course(s) ' + training.u_ilearn_course + ' in iLearn.   Click Ok to sbumit your request or cancel if you have not completed the training.');

  }

  if(conf) {

  alert (conf);

  return true;

  }

  else {

  alert (conf);

  return false;

  }

  });

  }

  }

  else {

  return true;

  }

}

1 ACCEPTED SOLUTION

HV1
Mega Guru

Try this:




function onSubmit() {


        //Type appropriate comment here, and begin script below


            var req = g_form.getValue('requesttype');


            if (req == 'New / Modify Account') {


                      var role = g_form.getValue ('role');


                      if (role == 'Due Diligence Data Management (no course required)' ||   role == 'Due Diligence TMF (no course required)'){


                                return true;


                      } else {


                                var training = new GlideRecord ('u_trackwise_roles');


                                training.addQuery('u_role', role);


                                training.query();


                                if (training.next()) {


                                          return confirm('Have you completed course(s) ' + training.u_ilearn_course + ' in iLearn.   Click Ok to submit your request or cancel if you have not completed the training.');


                                }


                  }


        }


        else {


                return true;


        }


}



- Hardik Vora


View solution in original post

11 REPLIES 11

zica
Giga Guru

Brian



function onSubmit() {


  //Type appropriate comment here, and begin script below


  var req = g_form.getValue('requesttype');


  if (req == 'New / Modify Account') {


  var role = g_form.getValue ('role');


  if (role == 'Due Diligence Data Management (no course required)' ||


  role == 'Due Diligence TMF (no course required)'){


  return true;


  } else {


  var training = new GlideRecord ('u_trackwise_roles');


  training.addQuery('u_role', role);


  training.query(function(training){


  if (training.next()){


  return confirm('Have you completed course(s) ' + training.u_ilearn_course + ' in iLearn.   Click Ok to sbumit your request or cancel if you have not completed the training.');


  }



  });


  }


  }


  else {


  return true;


  }


}


This did not work.


Abdul Khan4
Kilo Guru

Hi ,



Define variable var conf = false; on line number 3. See below and correct line number 15 of your code.





  1. function onSubmit() {  
  2.   //Type appropriate comment here, and begin script below  
  3.   var req = g_form.getValue('requesttype');  
  4.   if (req == 'New / Modify Account'){  
  5.   var conf = false;
  6.   var role = g_form.getValue ('role');  
  7.   if (role == 'Due Diligence Data Management (no course required)' ||    
  8.   role == 'Due Diligence TMF (no course required)'){  
  9.   return true;  
  10.   }  
  11.   else {  
  12.   var training = new GlideRecord ('u_trackwise_roles');  
  13.   training.addQuery('u_role', role);  
  14.   training.query(function(training){  
  15.   if (training.next()){  
  16.   conf = confirm('Have you completed course(s) ' + training.u_ilearn_course + ' in iLearn.   Click Ok to sbumit your request or cancel if you have not completed the training.');  
  17.   }  
  18.   if(conf) {  
  19.   alert (conf);  
  20.   return true;  
  21.   }  
  22.   else {  
  23.   alert (conf);  
  24.   return false;  
  25.   }  
  26.   });  
  27.   }  
  28.   }  
  29.   else {  
  30.   return true;  
  31.   }  
  32. }  


This did not work