Я написал небольшое дополнение JQuery / Javascript для нашей формы, которое принимает один полный ввод имени и разбивает его на компоненты имени и фамилии.Он открывает модальное окно, если на входе есть три или более имен, и спрашивает, какая комбинация верна.
Мой следующий шаг - найти и удалить любой суффикс, который мог быть введен, такой как Jr, Sr, III и т. Д.В настоящее время я удаляю последние четыре символа и проверяю их с помощью indexOf, чтобы увидеть, содержат ли они строку суффикса (Jr, Sr, III и т. Д.).Но каждая строка проверяет только один возможный суффикс, и мне интересно, есть ли какая-то магия js, которая будет проверять несколько суффиксов в одной строке.Мой текущий код ниже:
var nameVal = $('#name').val();
var suffix = nameVal.slice(-4);
if (suffix.toLowerCase().indexOf(" jr") != -1) {
var nameSplit = nameVal.slice(0, -3).split(" ");
} elseif (suffix.toLowerCase().indexOf(" iii") != -1) {
var nameSplit = nameVal.slice(0, -4).split(" ");
} else {
var nameSplit = nameVal.split(" "); }
Я всегда могу сделать старый добрый ||и продолжаю добавлять extra (suffix.toLowerCase (). indexOf ("jr")! = -1) с другим значением indexOf, но я надеюсь сохранить код более компактным, если это возможно, мой "маленький" скрипт уже 3k.
После того, как я это отсортирую, последним шагом будет выяснение того, как сохранить значение фамилии, чтобы далее вниз по форме при вводе других имен и повторном вызове сценария он мог проверить, чтобы увидеть,выбранное имя совпадает с новой записью и пропускает модальное всплывающее окно.