У меня есть страница с раскрывающимся списком. Событие onchange
вызывает функцию Javascript (ниже), которая включает в себя блок Ajax, который извлекает данные и заполняет TEXTAREA
. На поверхности все работает.
Я могу выбрать любой элемент в списке без проблем. Однако, если я выбираю элемент, который был ранее выбран, вызов Ajax кажется зависшим. Похоже, какая-то странная проблема с кэшированием или что-то в этом роде. Если я закрою браузер и перезагрузлю страницу, все элементы будут работать снова, пока я не выберу снова.
Я проверял свойства readyState
и status
, когда он зависает, но ничего не получаю. Я что-то упустил?
Страница является клиентским проектом за аутентификацией, поэтому я не могу опубликовать URL, но вот код Ajax. Это на странице PHP, но с этим не связан ни один скрипт PHP.
function getText( id ) {
var txt = document.getElementById( "MyText" );
txt.disabled = "disabled";
txt.innerText = "";
txt.className = "busy";
var oRequest = zXmlHttp.createRequest();
oRequest.open( "get", "get_text.php?id=" + id, true );
oRequest.send( null );
oRequest.onreadystatechange = function() {
if( oRequest.readyState == 4 ) {
if( oRequest.status == 200 ) {
txt.innerText = oRequest.responseText;
} else {
txt.innerText = oRequest.status + ": " + oRequest.statusText;
}
txt.disabled = "";
txt.className = "";
oRequest = null;
}
}}
Редактировать: Кодовый блок кажется немного странным; он не позволит мне включить окончательный }
, если он не совпадает с предыдущим.