Проверьте идентификатор, игнорируя часть имени идентификатора. - PullRequest
0 голосов
/ 28 июня 2018

В настоящее время я добавляю атрибуты заполнителя в поля ввода, ориентируясь на них по идентификатору.

$('#spectrum-form-id-number-6904_4').attr('placeholder', 'First Name');
$('#spectrum-form-id-number-6904_5').attr('placeholder', 'Last Name');
$('#spectrum-form-id-number-6904_6').attr('placeholder', 'Email');

Мне нужно иметь возможность нацеливать их без части «6904» идентификатора, так как форма генерируется динамически, и эти 4 цифры будут различаться, но префикс «spectrum-form-id-number-» и окончание число "_4" (или _5, _6) будет одинаковым для всех сгенерированных форм.

Ответы [ 2 ]

0 голосов
/ 28 июня 2018

Я думаю, вы можете добиться этого, используя селектор атрибутов . Э.Г.

$('[id^="spectrum-form-id-number-"][id$="_4"]').attr('placeholder', 'First Name');
$('[id^="spectrum-form-id-number-"][id$="_5"]').attr('placeholder', 'Last Name');
$('[id^="spectrum-form-id-number-"][id$="_6"]').attr('placeholder', 'Email');

[атр = значение] Представляет элементы с именем атрибута attr, значению которого предшествует (предшествует) значение.

[атр $ = значение] Представляет элементы с именем атрибута attr, к значению которого добавляется суффикс (сопровождается) значением.

0 голосов
/ 28 июня 2018

Вы можете использовать приведенный ниже сегмент кода для ссылки на все элементы спектра, чьи цифры будут динамическими:

$("div:regex(id, spectrum-form-id-number-.*)");

Он выплюнет элемент DOM, и вы сможете продолжить с ним играть.

...