Здравствуйте, у меня проблема с ajax запросом в IE и в OPERA. В IE8 все работает отлично, но в 6 и 7 выдается ошибка "Неизвестная ошибка выполнения". А в OPERA версии 9.23 и ниже запрос тоже не работает, работает только в версии 9.63 и выше! Вот код : [js] var doc; function vibor(sel) { var id = sel.options[sel.selectedIndex].value; if(window.navigator.appName=="Microsoft Internet Explorer") { doc = new ActiveXObject("Microsoft.XMLHTTP"); } else { doc = new XMLHttpRequest(); } doc.onreadystatechange = changeOutmenu; doc.open("GET", "ajax.php?idcat=" + encodeURIComponent(id) + "&url=" + new Date().getTime(), true); doc.send(null); } function changeOutmenu() { if (doc.readyState == 4){ document.getElementById("menu").style.visibility = "visible"; document.getElementById("menu").innerHTML = doc.responseText;//вот здесь IE выдает ошибку "Неизвестная ошибка выполнения" document.getElementById("load").innerHTML = ""; //alert(doc.responseText); } else { document.getElementById("menu2").style.display = "none"; document.getElementById("menu").style.visibility = "hidden"; document.getElementById("load").innerHTML = "<center><img src='images/ajax-loader1.gif'></center>"; } } [/js] вот код откуда должна вызываться функция PHP: <li> <label for="category">Category:<em>*</em></label> <select id="category" name="category" onchange='vibor(this)'> <? $qv=mysql_query("SELECT * FROM menu WHERE idcat=1"); while($row=mysql_fetch_array($qv)) { echo("<option id='$row[0]' value='$row[0]'>$row[namemenu]</option>"); } ?> </select> </li> <li> <label for="menu2">Sub-category:<em>*</em></label> <select name="menu" id="menu2"> <? $qv=mysql_query("SELECT * FROM podmenu WHERE idmenu=29"); while($row=mysql_fetch_array($qv)) { echo("<option id='$row[0]' value='$row[0]'>$row[name]</option>"); } ?> </select> <span id="menu"></span><span id="load"></span> </li> И код ajax.php PHP: if (isset($_GET['idcat'])) { $qv=mysql_query("SELECT * FROM podmenu WHERE idmenu=$_GET[idcat]"); echo("<select name='menu'>"); while ($row=mysql_fetch_array($qv)) { echo("<option value='$row[0]'>$row[name]</option>"); } echo("</select>"); }
Да у нас тут сейчас проект стоит так что времени нет разбираться с jQuery, да и при том у меня только эта функция сейчас не работает. Так что если можешь помоги пожалуйста
Спасибо за совет! А по моему основному вопросу можешь чем нибудь помочь, а то че-то я не знаю в чем может быть проблема
[js] <script> function request_order_load(DId, OrdId, DT) { $.post('actions/RequestOrderLoad.php', { DealerId: DId, OrderId: OrdId, LoadDate: DT }, change_order_load_result, 'json'); } </script> [/js] change_order_load_result - callback-функция Вот пример ajax запроса из кода одного из моего проектов. Разве сложно? к сожалению использую jQuery.