嗨,我是ajax和javascript的新手,我遇到了一些问题 向服务器发送请求。
这是我的代码:
function process(){
if(xmlHttp.readyState==0 || xmlHttp.readyState==4){
Selected_word = document.getSelection();
xmlHttp.open("GET","/gwizz/scripts/definition.php?word="+Selected_word,true);
xmlHttp.onreadystatechange = handleServerResponse;
xmlHttp.send(null);
}else{
setTimeout('process()',1000);
}
}
我正在使用函数" process()"在文档正文上触发双击列表器时向服务器发送请求。我从服务器获得的响应是一个xml文件,其内容显示在jquery弹出模式中,正如您在" handleServerResponse()"中看到的那样。功能如下。
我的问题是我想在弹出模式关闭后向服务器发送另一个请求。我尝试通过使用我的xmlHttp对象的open和send属性并在弹出模式的onClose()函数下面的不同php脚本发送请求来尝试这样做。但它没有将这些值发送到php脚本。
如何使用此signle ajax对象在我的代码的不同阶段向服务器发送值?任何帮助都会得到满足。感谢。
function handleServerResponse(){
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
var xmlResponse = xmlHttp.responseXML;
var xmlDocumentElement = xmlResponse.documentElement;
Definition = xmlDocumentElement.firstChild.data;
$('#element_to_pop_up').bPopup({
onOpen:function(){
modal_open = time();
document.getElementById("element_to_pop_up").innerHTML = "<span style='font-weight: bold;font-size: 25pt'>"+ Selected_word;
},
onClose:function(){
modal_close = time();
document.getElementById("element_to_pop_up").innerHTML = "";
username = "beach";
xmlHttp.open("GET","/gwizz/scripts/logfile.php?word="+Selected_word + "&username=" + username + "&modal_close=" + modal_close + "&modal_open=" + modal_open,true);
xmlHttp.send(null);
}
});
}else{
alert('Something went wrong with process!!!');
}
}
}