Проверка RegEx для динамически создаваемых элементов с использованием JavaScript

0

Я создаю textbox следующим образом:

 var dataInputBox = '<input type=text  name='+id+' id=datePicker maxlength='+maxlength+' title="'+tooltip+'" onKeyUp="inputFilter(this,"'+regex+'");/>';

и это мой метод javascript:

function inputFilter(inputbox,regex) {
           txb.value = inputbox.value.replace(regex, "");
        }

regex значение будет: "^(?![ ])(?=.*[\w]).{1,70}(?<!\s)$" как мудрый, я буду передавать различное значение regex и что Я дал выше для Alphanumeric. Я буду передавать разные значения регулярных выражений, как указано выше.

когда я выполняю выше, я получаю текстовое поле, и когда я пытаюсь ввести некоторые значения, я получаю следующее исключение: Uncaught SyntaxError: Unexpected token }

номер строки, заданный на консоли, не является правильным, и я показываю, что ошибка находится в line number 2 если я onKeyUp="inputFilter(this,"'+regex+'"); чем я не получаю это исключение.

Может кто-нибудь мне поможет в этом, пожалуйста...

Теги:
onkeyup

1 ответ

0

Ошибка возникла из вашего regexpr: ^ (?! []) (? =. * [\ W]). {1,70} (?

var r = /^(?![ ])(?=.*[\w]).{1,70}(?<!\s)$/;
SyntaxError: Invalid regular expression: /^(?![ ])(?=.*[\w]).{1,70}(?<!\s)$/: Invalid group

Может быть, вы имеете в виду:

^(?![ ])(?=.*[\w]).{1,70}(?!<!\s)$

Обратите внимание на дополнительные '!' в последней группе: (?!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню