﻿id	summary	reporter	owner	description	type	status	priority	component	resolution	keywords	cc
1064	Использовать методы .text() / .val() вместо escapeHtml()	alx	Denis_N	"В r133/base в файл script.js добавлена функция `escapeHtml()`, заменяющая определенные символы текста в HTML entities, которая потом используется для добавления произвольных строк текста в HTML-код.

Данный подход не очень хорош, так как, во-первых, требует чтобы каждый раз, когда к коду HTML добавляется произвольный текст, вызывать для него `escapeHtml()`, а во-вторых, само нагромождение таких вызовов затрудняет чтение кода (строка получается очень длинной, и в ней перемешаны и разметка HTML, и отображаемый текст, и вызовы функций)...

**Предлагаю** по возможности использовать немного другой подход: сначала создавать элемент документа, содержащий только структуру (разметку) без контента, а потом добавлять в его дочерние элементы контент методами `text()`/`val()`/`prop()`. Например вместо такого:

{{{#!js
let div = $('<div class=""InputField""><label>' + escapeHtml(labelText) + '</label><input type=""text"" name=""recipient"" class=""recipient"" maxlength=""25"" value=""' + escapeHtml(recipient) + '""></div>');
}}}

писать так:

{{{#!js
let div = $('<div class=""InputField""><label/><input type=""text"" name=""recipient"" class=""recipient"" maxlength=""25""></div>');
div.find('label').text(labelText);
div.find('input').val(recipient);
}}}

Как нетрудно заметить, во втором варианте и структура создаваемого элемента лучше видна (ничего лишнего не мешает), и ясно видно, какие элементы какой текст получают, не требуется предварительное кодирование текста в HTML (не нужна ""лишняя"" доморощенная функция для кодирования).

//Этот тикет - просто как замечание-рекомендация к коммиту (к сожалению в trac нельзя добавить комментарий к коммиту, как, например, это можно сделать в github, поэтому пришлось создать тикет). Можно закрыть по прочтении... :)//"	улучшение	new	minor	БД изделий АДС			
