我有这个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;
}
我需要var url等同于“petition_send.php?petition_ID = cake&”
但是,出于某种原因,当我这样编写代码时代码不起作用。
有什么想法吗?
答案 0 :(得分:0)
如果jquery是一个选项,你可以使用像
这样的东西$("#mybutton").click(function(){
$("#livesearch1").load("petition_send.php",
{ "q" : $("#cake").text(),
"sid" : Math.random() }).css("border","0px");
});
这简单得多
答案 1 :(得分:0)
使用jQuery:
$('#livesearch1').load('petition_send.php',
{ q: $('#cake').value(), sid: Math.random() },
function() { $('#livesearch1').addClass('with-border'); }
);
答案 2 :(得分:0)
您是否尝试将另一个参数(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);
}