2011-06-21 17 views
0

我使用struts2jquery我正在使用XMLHttpRequest的正常工作的服務器的請求,我希望有一個等價的jQuery解決方案等效jQuery的服務器調用我的XMLHttpRequest不工作​​

function submitLogin() 
{ 
    if(validate()) //this is true 
    { 
var url_action="/csm/login.action"; 
      var client; 
      var dataString; 
      if (window.XMLHttpRequest){ 
       client=new XMLHttpRequest(); 
      } else {      
       client=new ActiveXObject("Microsoft.XMLHTTP"); 
      } 
      client.onreadystatechange=function(){ 
       if(client.readyState==4&&client.status==200) 
       { 

       } 
      }; 

      dataString="emailaddress="+document.getElementById("email_id").value+"&projectid="+document.getElementById("project_id").value; 
      client.open("POST",url_action,true); 
      client.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 

      client.send(dataString); 
} 
} 

上述作品完美,所以在jQuery中我寫了下面的代碼,但它不工作,可能是什麼問題?

function submitLogin() 
{ 
    if(validate()) //this is true 
    { 
     $.post("/csm/login.action",function(xml) { 
      alert(xml); 
     }); 
    } 
} 
+1

您是否使用req發送數據? – Rafay

+0

3nigma:雅我完全錯過了。我發送'dataString =「emailaddress =」+ document.getElementById(「email_id」)。value +「&projectid =」+ document.getElementById(「project_id」).value;'數據 – abi1964

+0

感謝所有,但3nigma:發現問題第1 – abi1964

回答

1

OK,然後你需要發送數據

$.post("/csm/login.action",{emailaddess:"emailhere",projectid:'idHere'},function(xml) { 
      alert(xml); 
     }); 

,詳細瞭解$.post

HTH

1
function submitLogin() 
{ 
    if(validate()) //this is true 
    { 
     dataString="emailaddress="+$("#emailaddress").val()+"&projecti‌​d="+$("#project_id").val(); 
     $.post("/csm/login.action", dataString, function(xml) { 
      alert(xml); 
     }); 
    } 
} 

注意,你是不是跟你的帖子,這可能將問題發送任何數據。我添加了數據部分。

3

你錯過了你的jQuery代碼中的dataString變量。這可以通過調用data object很容易做到:

$.post("/csm/login.action", { 
    emailaddress: $("#email_id").val(), 
    projectid:  $("#project_id").val() 
},function(xml) { 
    alert(xml); 
}); 

jQuery將創建正確的查詢字符串爲您服務。

參考:$.post

1

你缺少你dataString可變

function submitLogin() {  
    if(validate()) //this is true  { 
    dataString="emailaddress="+document.getElementById("email_id").value+"&projectid="+document.getElementById("project_id").value; 
     url = "/csm/login.action" 
     $.post(url ,dataString, function(xml) {    
     alert(xml);   
    });  
    } 
    } 
相關問題