Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Jquery + XML + Internet Explorer (https://javascript.ru/forum/jquery/3156-jquery-xml-internet-explorer.html)

testdriver 23.03.2009 15:31

Jquery + XML + Internet Explorer
 
Здравствуйте, используется jquery.js v1.3.2 Получаю с помощью JQuery ответ от сервера в формате XML. Обрабатываю его и вывожу результат в alert(). В Opera и Mozilla работает отлично в IE6 выдает вместо ответа Null. Пробовал много всякого и header("Content-Type: text/html; charset=utf8"); перед выдачей вставлять и XML генерировать с помощью DOMDocument класса PHP нечего не помогает. IE, текст XML получает, текст корректный, но после манипуляций в JQuery получаются как будто пустые объекты. размерность у них есть, можно посмотреть свойство length, но внутри пустота.
В др. браузерах все отлично работает. в чем может быть проблема?

PHP код (get_alert.php):
<?php
//header("Content-Type: text/html; charset=utf8");
echo "<answer><session>dsfew7w8erwe8r7w98er7w8</session></answer>";
?>


HTML код(index.php)
<html>
<head>
<script language="javascript" src="jquery.js"></script>
<script language="javascript" src="jquery.form.js"></script>
<script>
function get_alert()
{
  $.post('get_alert.php', '', onAjaxSuccess);
 
}
function onAjaxSuccess(xml)
{
	session = $("session", xml).html();
	alert(session);
}
</script>
</head>
<body>
<a href="JavaScript:get_alert();">GET</a>
</body>
</html>

Gvozd 23.03.2009 15:37

вообще-то заголовок должен быть не text/html , а text/xml
если проблема не в этом, тогда не знаю

testdriver 23.03.2009 16:08

Если text/xml то вместо Null получается Undefined

Gvozd 23.03.2009 16:12

а где
Код:

<?xml version="1.0" encoding="UTF-8"?>

testdriver 23.03.2009 16:18

<?php
header("Content-Type: text/xml; charset=utf8");
?>
<?xml version="1.0" encoding="UTF-8"?>
<answer>
<session>dsfew7w8erwe8r7w98er7w8</session>
</answer>


Так все равно не работает я так тоже пробывал, так снова становиться null

testdriver 23.03.2009 16:44

переписал не на XML, а на JSON

<html>
<head>
<script language="javascript" src="jquery.js"></script>
<script language="javascript" src="jquery.form.js"></script>
<script>
function get_alert()
{
  $.getJSON('get_alert.php', '', onAjaxSuccess);
 
}
function onAjaxSuccess(obj)
{
	alert(obj.session);
	alert('test');
}
</script>
</head>
<body>
<a href="JavaScript:get_alert();">GET</a>
</body>
</html>


<?php
header('Content-Type: text/javascript; charset=utf-8');
?>
{
session: 'dsfew7w8erwe8r7w98er7w8'
}


опять работает везде кроме IE, ЛЮДИ объясните чего за хрень!!! ну не работает в IE не так не этак (((

testdriver 24.03.2009 15:54

У кого нибудь реально взаимодействие JS+PHP посредством XML реализованно? такое ощущение, что никто так не когда не делал, реально с IE какие-то проблемы, с JSON вроде получилось, с XML глухо.

Kolyaj 24.03.2009 16:24

Цитата:

Сообщение от testdriver
такое ощущение, что никто так не когда не делал

Извращенцев мало.

testdriver 24.03.2009 20:15

т.е. это технология специально для извращенцев реализована? на ваш взгляд.

Kolyaj 24.03.2009 20:39

Каждая технология уместна в своих областях. Разбирать в JavaScript XML, когда намного проще, удобней, компактней использовать JSON, -- извращение.


Часовой пояс GMT +3, время: 13:07.