Я загружаю некоторые опции через ajax. Это отлично работает. Но если они содержат HTML-сущности, они не будут правильно закодированы.
HTML:
<select name="selectid1" id="selectid1"></select>
<script type="text/javascript">
$(document).ready(function() {
$('#selectid1').load('ajax.php',{'func':'list'});
});
</script>
ajax.php
if ($_REQUEST["func"]=="list"){
$name = "Röntgen"
echo "<option value="1">".htmlentities($name, ENT_COMPAT | ENT_HTML401, "ISO-8859-1")."</option>";
}
В окне выбора появится: R \ ouml; ntgen (замените \ на &, здесь не знаю, как остановить кодировку)
Если я не заменю htmlentities в ajax.php, в опции выбора будет только пустая запись.
Это происходит, только если я загружаю содержимое поля выбора через ajax.