2012-08-26 60 views
0

我能够使用ajax GET方法发布数据到php页面,但是我在添加更多参数到POST方法时遇到问题。以下是我使用的代码。因为我能有来自PHP脚本的响应:如何将更多的参数添加到ajax发布请求

if(XMLHttpRequestObject) { 
    XMLHttpRequestObject.open("POST", url,true);XMLHttpRequestObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); 
XMLHttpRequestObject.onreadystatechange = function() 
{ 
    document.getElementById('statuses').innerHTML = msg1; 
    if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { 
var content = XMLHttpRequestObject.responseText; 
$(document).ready(function(){ 
    $('#statuses').text(content); 
    }); 
} 
} 
XMLHttpRequestObject.send("id=" + id); 
} 

现在假设我决定用另一个代码发送这是与jQuery很容易的数据,我如何才能从PHP脚本的响应?下面是第二码:

 $(document).ready(function(){ 
    // get values 
    cc = $('#ft').attr('value'); 
    cop = $('#copt').attr('value'); 

    // send to processing PHP script 
    $.ajax({ 
     type: "GET", 
     cache: false, 
     url: "processor.php", 
     data: "cctotal="+ cc +"&coptotal="+ cop + "&id="+ id + "&get=" + 'update', 
     success: function(){ 
      $('#processing').fadeIn(function(){ 
      var content = 'Customer Account Updated !' ; 
      $('#statuses').text(content); 
      }); 
     } 
      }); 

    }); 
+0

您可以使用'$ .post'或'$ .get'作为GET和POST的缩写。不需要做完整的配置。接收到的数据位于传递给'success'的函数的第一个参数中。您还可以将JS对象传递给数据,比查询字符串更清晰。 – nhahtdh

+0

你的问题是误导。你在哪里*添加更多的参数阿贾克斯post请求*? –

回答

0
//Try this 

$(document).ready(function(){ 
    // get values 
    cc = $('#ft').attr('value'); 
    cop = $('#copt').attr('value'); 

    // send to processing PHP script 
    $.ajax({ 
     type: "GET", 
     cache: false, 
     url: "processor.php", 
     data: "cctotal="+ cc +"&coptotal="+ cop + "&id="+ id + "&get=" + 'update', 
     success: function(data){ 
      $('#processing').fadeIn(function(){ 
      var content = 'Customer Account Updated !' ; 
      $('#statuses').text(content); 
      }); 
      alert(data) //server response here 
     } 
      }); 

    }); 
+0

非常感谢你非常有用 – udo

1

AJAX的默认的contentType是'application/x-www-form-urlencoded; charset=UTF-8'和cahce所以你不需要设置,和你正在做会在jQuery的期待平原JS调用XMLHttpRequestObject像:

​​

做一些额外的数据POST请求,你会做这样的事情

$(function(){ 
    cc = $('#ft').val(); 
    cop = $('#copt').val(); 

    $.ajax({ 
     type: 'POST', 
     url: url, 
     cache: false, 
     data: {cctotal: cc, coptotal: cop, id: id, get: 'update'} 
    }).done(function(content) { 
     $('#processing').fadeIn(function(){ 
      $('#statuses').text('Customer Account Updated !'); 
     }); 
    }); 
}); 
​ 

而您将在服务器上的POST超全局中访问该数据。例如在PHP中,它将是:

$cc = $_POST['cctotal']; 
$cop = $_POST['coptotal']; 
$id = $_POST['id']; 
$get = $_POST['get']; 
+0

非常感谢我非常感谢。但我在哪里可以得到更高级的教程或电子书的Ajax/jQuery和我不知道有关xml的东西 – udo

+0

做一个谷歌搜索,有关于这个在网上很多伟大的信息,和jQuery有它自己的网页与文档所有的功能,方法,你的名字! – adeneo

相关问题