Начал осваивать ajax. Нашел скрипт на одном из форумов: Код (Text): <script> function createXmlHttp(){ if (typeof XMLHttpRequest != "undefinder"){ return new XMLHttpRequest(); }else if (window.ActiveXObject){ var Versions = ["MSXML2,XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"]; for (var i = 0; i < Versions.length; i++){ try { var XmlHttp = new ActiveXObject(Version[i]); return XmlHttp; } catch (oError){ //////// } } } throw new Error("Не возможно создать XMLHttp"); } var XMLHttp = createXmlHttp(); XMLHttp.open("get", "anekdot.php?id=" + id, true); XMLHttp.onreadystatechange = function(){ if (XMLHttp.readyState == 4){ if (XMLHttp.status == 200){ alert("Анекдот: " + XMLHttp.responseText); }else{ alert("Ошибка!"); } } } XMLHttp.send(null); </script> Затем сосздал файл anekdot.php с таким содержимым: Код (PHP): <?php $id = $_GET['id']; if ($id == 1){ echo " Хаха! "; } ?> Но к сожалению ни одного алерта не было... Что не так?
yuri, c каких это пор PureJS - извращение?)) это с ультра-облегченным jQuery все начали учить его синтаксис, а не JS. EndoCrinolog, я код так не воспринимаю, крайне советую лису и FireBug, там отличнейший отладчик JS. А так же есть книга "AJAX+PHP Динамические веб-приложения" или как-то подобно называется. Я изучил XmlHtttpRequest по нему, а потом увидел как это сделано в jQuery, и забыл про этот страшный код (хотя вовсе не жалел времени, потраченного на копание) Код (Text): jQuery.get('anekdot.php?id=" + id', function(data) { jQuery('#someElement').html(data); });
Код (Text): <div id="someElement">This text will be replaced by jQuery</div> Код (Text): jQuery('#someElement').html('<p>New data of <strong>#someElement</strong></p>'); = Код (Text): <div id="someElement"><p>New data of <strong>#someElement</strong></p></div> http://api.jquery.com/category/selectors/ Там кстати отличнейшая документация
это типа цссшная фишка #lalala это элемент с id='lalala' .lalala это элемент с class='lalala' ну или class='jujuju lalala' соотв если что-то начинается с буквы, то ищутся все такие теги $('div').html('все дивы получат это внутри себя и во вложеных дивах в итоге останется только один див =)'); соотв работает с классами $('div.lalala') - выберет все дивы с классом lalala если надо чтобы у какого-то элемента были оба класса надо оба через точку: $('div.lalala.jujuju')