Javascript/jQuery для специальных символов при использовании val()
У меня проблема со специальными символами типа &, ä и т.д. и их соответствующим HTML-кодированным письмом, например &
, ä
и т.д.
-
Когда они используются в теге значений полей ввода, браузер автоматически декодирует его, без проблем.
-
При использовании функции jQuerys val() браузер не имеет возможности правильно оценить содержимое.
$("button").click(function(){
$("#test").val("&");
});
Любая идея?
Ответы
Ответ 1
Вы можете использовать эту вековую подсистему декодирования сущностей:
$("button").click(function(){
$("#test").val($("<div>").html("&").text());
});
Рабочая демонстрация: http://jsfiddle.net/AndyE/XegGy/
Создает временный элемент <div>
, устанавливает его HTML в &
и затем получает текстовое значение, которое будет &
.
Ответ 2
Попробуйте .html()
:
$("#test").html("&");