Да, согласно spec , это теперь действительная escape-последовательность, однако, чтобы включить поддержку, вы должны включить новый флаг u в определение Regex:
var regpat = /^[\u{41}-\u{5A}\u{61}-\u{7A}\u{1F4A9}\.\' \-]{2,15}/u;
console.log(regpat.test("\u{41}\u{61}}"))
Я соглашаюсь с Pat. В этой точке в игре, пишущий Ваш собственный код для контакта с перекрестной совместимостью браузера, учитывая доступные платформы JavaScript не имеет большой смысл. Существует платформа почти для любого вкуса (некоторые действительно довольно крошечные), и они сфокусировались на реальной абстракции всех различий между браузерами. Они делают ПУТЬ больше тестирования его, чем Вы вероятны.
Что-то как jQuery или YUI Yahoo (думают, сколько людей поражает JavaScript Yahoo за день и множество браузеров) является просто путем, более протестированным на дорогу, чем какой-либо отрывок Вы, или я придумываю.
пользование хорошей библиотекой является отличным способом обойти несоответствия браузера, и jQuery является тем, который я обычно рекомендую - и если Вы сталкиваетесь с проблемами, изменяющими элементы в форме, в частности, jQuery имеет несколько действительно полезных плагинов, сфокусированных конкретно на управлении формой и оценке.
Используя прототип и $ ("thisid") синтаксис вместо document.getElementById ("thisid") мог бы добиться цели для Вас. Это работало на меня.