Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > параметры в AJAX


Автор: Areostar 7.5.2014, 17:08
Имеется рабочий код для Ajax запросов

Код

makeRequest(_url, ID);
 
function makeRequest(url, id) {
    //alert(url);
    //url += "?id=" + id;
    //alert(url);
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
      httpRequest = new XMLHttpRequest();
    } else if (window.ActiveXObject) { // IE
      try {
        httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
      } 
      catch (e) {
        try {
          httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
        } 
        catch (e) {}
      }
    }
 
    if (!httpRequest) {
      alert('Giving up :( Cannot create an XMLHTTP instance');
      return false;
    }
    httpRequest.onreadystatechange = alertContents;
    httpRequest.open('GET', url);
    httpRequest.send();
  }
 
function alertContents() {
    if (httpRequest.readyState === 4) {
      if (httpRequest.status === 200) {
      alert(httpRequest.responseText);
      var result = httpRequest.responseText;
      document.getElementById("result").write(result);
      // document.getElementById("result").innerHTML = "tytryrtyrtyrty";
      } else {
        alert('There was a problem with the request.');
      }
    }
  }


но как мне передать ещё и параметр? Пытался просто дописывать к урл - запрос перестаёт работать

Автор: Aliance 7.5.2014, 18:55
Если GET - то в url`е, если POST - то 27 строчка, метод send().
http://xmlhttprequest.ru/#encoding

Автор: Areostar 8.5.2014, 13:19
переписал так:

Код

var params = 'id=' + encodeURIComponent(id);
    
    httpRequest.onreadystatechange = alertContents;
    httpRequest.open('POST', url);
    httpRequest.send(params);


в PHP фаиле $_POST["id"] - не опознаётся

Автор: Aliance 8.5.2014, 14:04
Выложите полный пример на jsfiddle.net, видимо где-то ошибка у вас, т.к. все должно срабатывать валидно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)