ОБСУЖДЕНИЕ

Ошибка Ajax в Firefox

5 ответов 10,7 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Статус
Закрыто для дальнейших ответов.
Автор темы
День добрый.
Написал небольшой скриптик, который после нажатия кнопки должен построить таблицу на странице. При этом идёт запрос к php-скрипту через ajax.
Вот функция запроса:
Код:
function saved()
{
ajax.requestFile = 'getDate.php?qwerty=1&auftrag=<?=$auftrag?>';
ajax.onCompletion = qwertyz;
ajax.runAJAX();
document.Bestellform.dhtmlgoodies_artikel.options[0].selected = true
document.Bestellform.dhtmlgoodies_qualitaet.options.length=0;
document.Bestellform.dhtmlgoodies_farbe.options.length=0;
document.Bestellform.dhtmlgoodies_groesse.options.length=0;
document.Bestellform.dhtmlgoodies_anzahl.value="";
document.Bestellform.dhtmlgoodies_preis.value="";
}
function qwertyz()
{
var obj = document.getElementById('myTable');
eval(ajax.response);	
}

Ответ выглядит приблизительно так:
Код:
for (i = myTable.rows.length-1; i != 0; i--) { myTable.deleteRow(i); } var myRow = document.getElementById("myTable").insertRow(1); var myCell = myRow.insertCell(); myCell.innerText = "Josh"; var myCell = myRow.insertCell(); myCell.innerText = "Pignappa Soft"; var myCell = myRow.insertCell(); myCell.innerText = "Schwarz"; var myCell = myRow.insertCell(); myCell.innerText = "52"; var myCell = myRow.insertCell(); myCell.innerText = "100"; var myCell = myRow.insertCell(); myCell.innerText = "4900"; var myRow = document.getElementById("myTable").insertRow(2); var myCell = myRow.insertCell(); myCell.innerText = "Willy"; var myCell = myRow.insertCell(); myCell.innerText = "Pig Ace Soft"; var myCell = myRow.insertCell(); myCell.innerText = "Dunkelbraun"; var myCell = myRow.insertCell(); myCell.innerText = "52"; var myCell = myRow.insertCell(); myCell.innerText = "11"; var myCell = myRow.insertCell(); myCell.innerText = "594"; var myRow = document.getElementById("myTable").insertRow(3); var myCell = myRow.insertCell(); myCell.innerText = "Euro"; var myCell = myRow.insertCell(); myCell.innerText = "Lammnappa Waxy"; var myCell = myRow.insertCell(); myCell.innerText = "Schwarz"; var myCell = myRow.insertCell(); myCell.innerText = "46"; var myCell = myRow.insertCell(); myCell.innerText = "25"; var myCell = myRow.insertCell(); myCell.innerText = "2225"; var myRow = document.getElementById("myTable").insertRow(4); var myCell = myRow.insertCell(); myCell.innerText = "Dominik"; var myCell = myRow.insertCell(); myCell.innerText = "Lammnappa Waxy"; var myCell = myRow.insertCell(); myCell.innerText = "Schwarz"; var myCell = myRow.insertCell(); myCell.innerText = "58"; var myCell = myRow.insertCell(); myCell.innerText = "78"; var myCell = myRow.insertCell(); myCell.innerText = "7893.6";

Т.е. существующая таблица сперва удаляеться\, а на её место пишеться новая.
Всё работает, но только под ИЕ, в Firefox'e вылазит ошибка:
Код:
Fehler: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: ..ajax.js :: anonymous :: line 156" data: no]
Quelldatei: ..ajax.js
Zeile: 156

Fehler: uncaught exception: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXMLHttpRequest.send]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: ..ajax.js :: anonymous :: line 186" data: no]

Строчка 156 из ajax.js: self.responseStatus[0] = self.xmlhttp.status;
Строчка 186: this.xmlhttp.send(this.URLString);

Для xmlhttp в начале скрипта проверяеться, какой броузер. На странице есть и другие запросы через ajax, они работают, только этот нет :-(( Помогите :-(
 
Здорово, у меня такая же проблема, та же ошибка((((
Для: gp812
Поделись решением, если нашёл...
 
Надо поглядеть ajax. Что там, библиотека, или что?
 
Для: safo
Спасибо,
нашёл решение проблемы через ваш форум :( , т.е. воткнул ещё одну переменную, как описано здесь :
http://www.quirksmode.org/blog/archives/20..._notes_a_1.html ;
Подобную проблему Вы обсуждали в топике Технология AJAX, пост номер 3, оттуда и ссылка ;)
 
Для: Emelya
Очень рад, что пригодился мй форум. Хотя он сейчас в стадии обкатки, да и двиг модернизируется. Материала мало, пока. Но, если, что, заходите, есть наработки по этой теме. Чем смогу, тем помогу!
 
Статус
Закрыто для дальнейших ответов.