Это должно работать. Я настроил его как живой обработчик событий (чтобы он работал для элементов, динамически добавляемых на страницу), но вы также можете использовать ту же функцию, что и обычный обработчик ключей, на любом элементе textarea
или input
. .
Он проверяет, заканчивается ли текущее значение элемента !!!
и, если это так, выполняет замену, оба с использованием простых регулярных выражений.
$("input,textarea").live("keyup", function() {
var $this = $(this);
var value = $this.val();
if (/!!!$/.test(value)) {
$this.val(value.replace(/(\.?)([^.]+?\.?\s*)!!!$/, '$1<span class="important">$2</span>'));
}
});