Изменить JavaScript, чтобы получить две строки запроса - PullRequest
0 голосов
/ 15 ноября 2010

У меня есть этот код JavaScript, который отправляет значение того, что введено на панели ввода, в файл php, который выбирает строки из базы данных в соответствии со значением того, что вводится в поле ввода.Мне нужно отредактировать этот код так, чтобы javascript отправлял php не только значение того, что вводится в строку ввода, но и другую переменную javascript.

Код выглядит следующим образом:

function showFriends(str)
{
    var cake = document.getElementById("cake");

    if(str.length == 0)
    { 
        document.getElementById("livesearch1").
        innerHTML = "";
        document.getElementById("livesearch1").
        style.border="0px";
        return
    }

    xmlHttp=GetXmlHttpObject()


    var url="petition_send.php"
    url=url+"?q="+str
    url=url+"&sid="+Math.random()
    xmlHttp.onreadystatechange=stateChanged 
    xmlHttp.open("GET",url,true)
    xmlHttp.send(null)
} 

function stateChanged() 
{ 
    if(xmlHttp.readyState == 4 || xmlHttp.readyState=="complete")
    { 
        document.getElementById("livesearch1").
        innerHTML=xmlHttp.responseText;
        document.getElementById("livesearch1").
        style.border="1px solid #A5ACB2";
    } 
}

function GetXmlHttpObject()
{
    var xmlHttp=null;
    try
    {
    //Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
    //Internet Explorer
    try
    {
        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    }
        return xmlHttp;
    }

Мне нужно, чтобы URL-адрес переменной был эквивалентен "petition_send.php? Petition_ID = cake &"

, но по какой-то причине код не работает, когда я так пишу.

Есть мысли?

Ответы [ 3 ]

0 голосов
/ 15 ноября 2010

Использование jQuery:

$('#livesearch1').load('petition_send.php', 
  { q: $('#cake').value(), sid: Math.random() },
  function() { $('#livesearch1').addClass('with-border'); }
);
0 голосов
/ 15 ноября 2010

Вы пытаетесь добавить другой параметр (petition_ID) в текущую строку запроса и установить значение petition_ID равным значению var cake?

function showFriends(str)
{
    var cake = document.getElementById("cake");

    if(str.length == 0)
    { 
        document.getElementById("livesearch1").innerHTML = "";
        document.getElementById("livesearch1").style.border="0px";
        return;
    }

    xmlHttp=GetXmlHttpObject();


    var url="petition_send.php";
    url=url+"?q="+str;
    // additional param
    url=url+"&petition_ID="+cake;
    url=url+"&sid="+Math.random();
    xmlHttp.onreadystatechange=stateChanged;
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
} 
0 голосов
/ 15 ноября 2010

если опция jquery, вы можете использовать что-то вроде

$("#mybutton").click(function(){
   $("#livesearch1").load("petition_send.php", 
      { "q" : $("#cake").text(),
        "sid" : Math.random() }).css("border","0px");
});

, что намного проще

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...