У меня есть простой сценарий Ajax, который отлично работает в Chrome, Internet Explorer 8, Firefox 3.5.5, но не работает в Firefox 3.5.7. Код выглядит следующим образом:jQuery Ошибка ответа Ajax в Firefox 3.5.7
HTML-страницы:
<div>
<form>
<input id='button' type='button' value='click'>
</form>
</div>
<script>
$(document).ready(function(){
$("#button").click(function(){
$.ajax({
type: "POST",
url: HTTP_HOST+"/ajax/ajax.php",
data: 'source=test',
dataType: 'html',
success: function(data) {alert('success: '+data);},
error: function(XMLHttpRequest, textStatus, errorThrown){alert('fail:\n'+
textStatus+'\n'+
errorThrown+'\n'
);}
});
});
});
</script>
ajax.php Страница:
$sourcePage = $_POST['source'];
if($sourcePage == 'test'){
echo 'hello';
}
Я получаю ожидаемый ответ (окно предупреждения говоря 'успех: привет') в которые я упомянул выше. В Firefox 3.5.7, однако, я получаю окно с сообщением «fail: error undefined».
Использование панели Firebug. Я вижу вызовы Ajax, и они получают значение ответа 200 OK, хотя он не может отличить размер ответа.
Нет других ошибок в соответствии с Firebug.
Основываясь на, по-видимому, успешном вызове Ajax и неопределенном размере ответа, я предполагаю, что Firefox не может интерпретировать ответ, хотя я новичок в этом и понятия не имею, что попробовать.
Как я могу решить эту проблему?
О да, это сделало бы это. Вы изолированы от одиночного домена с помощью ajax, если вы не проксируете вызов. – prodigitalson