Проверка редактора Summernote на наличие некоторых тегов html, таких как <b>, <i>, <ul>, <li>, но не специальных символов - PullRequest
0 голосов
/ 28 мая 2020

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

Этот шаблон допускает теги HTML, но не простую строку

<textarea id="description" class="summernote" maxlength="500" data-parsley-pattern="/<(p|span|ul|li|i|u) ?.*>(.*)<\/(p|span|ul|li|i|u)>/"></textarea>

допустимые значения должны быть: 1. Adfg gfg gdfsg gvdsfgdsr

  • Это для описания теста
  • тест для
dasdasddsad

не должно быть разрешено:> @> $ # @ $> ./34.3/2.2/34 34 34234 $ #% # $$ #

Пожалуйста, помогите мне

1 Ответ

0 голосов
/ 28 мая 2020

1.) Если вы хотите разрешить весь тег (с атрибутами и текстом с ним, специальные символы разрешены в атрибутах, но не в текстовой области), вы можете использовать это.

Для всех примеров: Выделенные будут сопоставлены

Aenean lacinia bibendum <a href="/life">life</a> sed Conctetur. <a href="/work">Work</a> quis risus eget urna mollis ornare <a href="/about">about</a> leo. "

/<\s*([a-z]?)[^>]*>([a-zA-Z0-9_]*?)<\s*/\s*([a-z]?)>/g

Если вы хотите разрешить только имя тега, вы можете использовать это

Он будет соответствовать только таким именам тегов, как => <div>, <a>, <li>

/<\s*([a-z]*?)[>]*\s*>/g

, если вы хотите принимать только один тег за раз: example => <div> используйте это:

/<\s*([a-z]*?)[>]*\s*>/

, если вы не хотите оставлять пробел в начале или в конце тегов используйте (remove \ s *)

/<([a-z]*?)[>]*>/

Если вы хотите разрешить только некоторые определенные c теги:

/<\s*((p|span|ul|li|i|u)1?)[>]*\s*>/

Это позволит разрешить только определенные c теги и буквенно-цифровые символы + _ между ними, не допускают никаких атрибутов в тегах:

Пример: <a>life klaskdjlaksjd lsdjk</a>

/<\s*((p|span|ul|li|i|u|a)?)*>([a-zA-Z0-9_ ]*?)<\s*/\s*((p|span|ul|li|i|u|a)1?)?>/
...