2010-12-01 106 views
0

我知道如何使用一個表單數據使用AJAX:如何正確輸入ajax?

$.ajax({ 
     type:'get', 
     url:'blabla.php', 
     data:$('#abc').serialize(); 
     ......... 

但如何,如果我想鍵入:

$('#exportmod').click(function(){ 
        $.ajax({ 
          "dataType":'json', 
          "type":'GET', 
          "url":'shows_merchan.php', 
          "data": [ action:"searchmodelqp", 
             jhead:"aaData", 
             month:$("#search_month").val(), 
             year:$("#search_year").val(), 
             export:"excel" 
            ], 
          "success":function(json){ 
                 fnCallback(json); 
                 } 
          }); 
        }); 

你能告訴我正確的類型,這AJAX?

+0

這看起來正確的,是它示數? – benhowdle89 2010-12-01 09:48:57

回答

1

你幾乎擁有它,只是在支撐你的data是錯誤的,它應該是{},而不是[]的對象,像這樣:

$('#exportmod').click(function(){ 
    $.ajax({ 
    dataType: 'json', 
    type: 'GET', 
    url: 'shows_merchan.php', 
    data: { action: "searchmodelqp", 
      jhead: "aaData", 
      month: $("#search_month").val(), 
      year: $("#search_year").val(), 
      export: "excel" 
      }, 
    success: fnCallback 
    }); 
}); 

上面顯示你可以做其他改變。您不必爲未保留的單詞引用標識符(只要它們的有效...和所有$.ajax()選項都是),也不需要使用匿名封裝來調用具有相同簽名的函數,所以我更改了success以直接使用您的回調。

還有針對上述$.ajax()呼叫的快捷方式,$.getJSON()

$('#exportmod').click(function(){ 
    $.getJSON('shows_merchan.php', 
      { action: "searchmodelqp", 
       jhead: "aaData", 
       month: $("#search_month").val(), 
       year: $("#search_year").val(), 
       export: "excel" }, 
      fnCallback); 
}); 
+0

有什麼不同? – klox 2010-12-01 09:50:09