У меня есть следующий JS для динамического изменения содержимого списка выбора HTML внутри формы:
<script type="text/javascript">
var provincias = [];
provincias['bsas'] = new Array('Capital Federal','San Martin','Quilmes');
provincias['cba'] = new Array('C´rdoba','La Carlota','Rio Cuarto');
provincias['nqn'] = new Array('Neuquén','Cipolletti','Plottier');
function setLoc() {
provSel = document.getElementById('provincia');
locList = provincias[provSel.value];
updateLista('localidad', locList, locList);
}
function updateLista(fieldID, newOptions, newValues) {
selectField = document.getElementById(fieldID);
selectField.options.length = 0;
for (i=0; i<newOptions.length; i++) {
selectField.options[selectField.length] = new Option(newOptions[i], newValues[i]);
}
}
</script>
И этот список:
<select name="provincia" id="provincia" onchange="setLoc();">
<option value="bsas">Buenos Aires</option>
<option value="cba">Córdoba</option>
<option value="nqn">Neuquén</option>
</select>
<select name="localidad" id="localidad">
<option value="">Seleccione una localidad</option>
</select>
Это работает хорошо, но я не понимаю, по какой причине вывод сущностей, вставленных JavaScript, является буквальным: в окне вы видите á
вместо & aacute ;. Хуже того, если я изменяю сущности специальными символами, браузер отображает странный знак вопроса (?), Причина, по которой я начал использовать сущности.
Кто-нибудь знает, есть ли ярлык для решения этой проблемы (например, специальный символ JS)? или я должен переформулировать свой скрипт, используя innerHTML для отображения результатов?
Еще одна вещь: имейте в виду, что это небольшой список, но этот скрипт будет адаптирован для загрузки данных формы из XML-документа, содержащего около 4000 записей (полный список штатов и городов моей страны). И я буду использовать базы данных MySQL для хранения данных формы). Это как кошмар для меня ...
Кстати: я пишу в utf8 без спецификации (сейчас я пишу это, но это проблема ...).
Приветствую, и спасибо всем заранее за хорошее мышление.