Validate multiple email addresses separated by a comma

lbless1
Giga Expert

This code is not validating any email addresses after the first one. Any help would be appreciated!

function onChange(control, oldValue, newValue, isLoading, isTemplate){

  var err_field = control.id;

  var err_flag = 'false';

  var err_message = 'Invalid Email Address format. Format should be like: abc@domain.com';

   

  var group_members = g_form.getValue('str1');

  var member_split = group_members.split(',');

  for (var n = 0; n < member_split.length; n++) {

  var member_info = member_split[n];

  regex = /[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/ig;

  err_flag = regex.test(g_form.getValue(err_field));

  g_form.hideErrorBox(err_field);

  if (!err_flag) {

    g_form.hideFieldMsg('req_inbox');

  g_form.showFieldMsg(err_field, err_message, 'error');

  }

  else {

  g_form.hideErrorBox(err_field);

  }

}

}

1 ACCEPTED SOLUTION

Abhinay Erra
Giga Sage

Here you go. Use this script



function onChange(control, oldValue, newValue, isLoading, isTemplate){


  var err_field = control.id;


  var err_flag = true;


  var err_message = 'Invalid Email Address format. Format should be like: abc@domain.com';


  g_form.hideErrorBox(err_field);


  var group_members = g_form.getValue('str1');


  var member_split = group_members.split(',');


  for (var n = 0; n < member_split.length; n++) {


  var member_info = member_split[n].trim();


  regex = /[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/ig;


  err_flag = regex.test(member_info);


  if (!err_flag) {


  break;


  }


  }


  if(!err_flag){


  g_form.hideFieldMsg('req_inbox');


  g_form.showFieldMsg(err_field, err_message, 'error');


  }


  else{


  g_form.hideErrorBox(err_field);


  }


}


View solution in original post

14 REPLIES 14

This is what I have. The error message is hiding now, but it still only validates the first email.


find_real_file.png


how to write onsubmit client script for validating email a list of selected users in list collector

Abhinay Erra
Giga Sage

You are still using your old script. Use my script as is. You should be good to go. Make sure you use correct field name in g_form.getValue();


It is working now, thanks!


Glad I could help. Please mark my response as correct and close the thread.



If you are viewing this from the community inbox you will not see the correct answer button. You need to open the thread directly and you will see a correct answer button with red star.     Please review this How To Mark Answers Correct From Community Inbox