У меня есть веб-форма Drupal с текстовой областью, которую я хотел бы ограничить строкой и символом в строке при выборе опции, связанной с текстовой областью.
Например, пользователь выбирает опцию A, текстовое поле должно быть ограничено 2 строками и 14 символами в строке. Вариант B, 3 строки, по 18 символов. И так далее, и тому подобное.
Я не могу взаимодействовать с веб-формой через hook_form_alter, чтобы добавить атрибуты к текстовой области для обратного вызова javascript. Я бы предположил, что это моя первая проблема. Однако я смог сделать это с помощью jQuery.
$(document).ready(function() {
$('#mytext').keyup(function() {
var v = $(this).val();
var vl = v.replace(/(\r\n|\n|\r)/gm, "").length;
if (vl == 0) {
count = 1;
}
if (parseInt(vl / count) == chars) {
$(this).val(v + '\n');
count++;
}
if (count > 3) {
var text = $('#mytext').val();
var lines = text.split('\n');
var test = implode('\n', lines);
alert(test);
}
});
});
Кроме того, как я могу считать строки и символы в строке и предотвращать ввод текста при соблюдении ограничений?
Я позаимствовал часть вышеперечисленного отсюда:
Количество символов в строке и количество строк в текстовой области