Я использую текстовое поле в HTML-форме и пытаюсь переформатировать его содержимое в допустимый HTML-формат, используя теги <p>
и <br/>
.
Я написал этот скрипт, и онкажется, работает, но я хотел убедиться, что я ничего не пропускаю.Поэтому я прошу отзывы.Мне известно, что я не принимаю во внимание возможность того, что пользователь может явно вводить HTML-теги, но это не проблема, потому что я все равно буду выдавать результат в PHP.
Заранее спасибо.
Пример вывода:
<p>Line 1<br/>Line 2</p><p>Line 4<br/><br/><br/>Line 7</p>
и код:
function getHTML() {
var v = document.forms[0]['txtArea'].value;
v = v.replace(/\r?\n/gm, '<br/>');
v = v.replace(/(?!<br\/>)(.{5})<br\/><br\/>(?!<br\/>)/gi, '$1</p><p>');
if (v.indexOf("<p>") > v.indexOf("</p>")) v = "<p>" + v;
if (v.lastIndexOf("</p>") < v.lastIndexOf("<p>")) v += "</p>";
if (v.length > 1 && v.indexOf("<p>") == -1) v = "<p>" + v + "</p>";
alert(v);
}
Обратите внимание, что этот код предназначен для использования в CMS, и всеJavaScript должен перестроить результат textarea с этими двумя тегами.Вид проблемы WYSIWYG ...