AJAX傳參從失敗到成功小結(jié):
看了AJAX基礎(chǔ)教程,感覺(jué)不錯(cuò),但是在向服務(wù)器傳遞參數(shù)的時(shí)候總是會(huì)有讓我感到苦惱的問(wèn)題,
比如下面的代碼:
<SCRIPT type="text/javascript">
?? function createXMLHttpRequest(){
????? if(window.ActiveXObject){
???????? xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");?????
????? }else if(window.XMLHttpRequest){
???????? xmlHttp = new XMLHttpRequest();
????? }
?? }
?? function startRequest(Sid){
????? createXMLHttpRequest();
????? xmlHttp.open("GET","/CountServlet?Sid="+Sid,true);
????? xmlHttp.send(null);
?? }
</SCRIPT>
在服務(wù)端的CountServlet的doGet()方法在多次請(qǐng)求之間只會(huì)被調(diào)用一次,痛苦!!!(難道是異步的問(wèn)題...)
于是我又改了一下xmlHttp的open方法的參數(shù)如下,
xmlHttp.open("POST","/CountServlet,true)
xmlHttp.send("Sid="+Sid);
結(jié)果在服務(wù)器端的doPost()方法在每次請(qǐng)求都會(huì)被正常調(diào)用,但是,request.getPrameter("Sid")方法就是怎么也獲得不到參數(shù)Sid,
在高手的幫助下,我又再次改了代碼,如下:
xmlHttp.open("POST","/CountServlet?Sid="+Sid,false);
xmlHttp.send(null);
嘿,還真的,牙好,胃口就好,入口見(jiàn)效,doPost()方法能正常被調(diào)用,參數(shù)也傳得到,具體是什么原因,我還在學(xué)習(xí)之中...
8.19日加:
解決辦法:
除了高手回復(fù)的方法,還有一種解決辦法就是:
xmlHttp.open("GET","/CountServlet?Sid="+Sid+"&timeStamp="+new Date().getTime(),false);
xmlHttp.send(null);
同樣是解決緩存的問(wèn)題..
只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。 | ||
![]() |
||
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問(wèn)
管理
|
||
相關(guān)文章:
|
||