2016-06-07 111 views
0

我想將使用AJAX JQuery的數據data: ({name: 'ccenter', value: 'Sales Department' })傳遞到PHP頁面沒有任何提交。 我嘗試用session_name(); session_start();但它並沒有work.variable $ccenter仍然undefined.I想我已經錯過了一些代碼做so.please幫助me.Thanks如何將數據從JQuery AJAX傳遞到PHP無需提交

這裏是我的jQuery的AJAX代碼:

$(function() { 
    $.ajax({ 
     url: 'empid_list.php', 
     type: "post", 
     async:true, 
     data: ({name: 'ccenter', value: 'Sales Department' }), 
     dataType: 'html', 
     success: function(data) { 
      $('#employeeid').html(data); 
     } 
    });  
}); 

這裏是我的PHP文件代碼:

<?php 
    session_name('session1'); 
    session_start();  
    $ccenter = $_POST['ccenter']; 
?> 
+0

$ ccenter = $ _ POST [ 'ccenter'];或者$ ccenter = $ _POST ['name']; ?? – anju

+0

應該是'$ _POST ['name']'而不是'$ _POST ['center']'(因爲鍵 - >值關聯),並且您應該從php回顯某些內容,否則'data'將會是'undefined' 。 – briosheje

+0

控制檯中的任何錯誤?您是否嘗試在我們的服務器端通過print_r($ _ POST)檢查數據? – Poria

回答

2

你的數據格式是錯誤的,必須{data-name:data-value}

data: {name: 'ccenter', value: 'Sales Department' } 

所以,你應該用數據名字稱呼

$ccenter = $_POST['name']; 
+0

謝謝@David Jawphan。有效。 – user5005768

+0

很高興聽到! –

0

,我建議你使用JavaScript的數據形對象:

var formData = new FormData(); 
formData.append("ccenter", "Sales Department"); 


$.ajax({ 
      url: 'empid_list.php', 
      type: "post", 
      async:true, 
      data: formData, 
      dataType: 'html', 
      success: function(data) { 
       $('#employeeid').html(data); 
      } 
     }); 
+0

FormData是否支持所有瀏覽器? –

+0

是@DamienPirsy在我所知的所有當前瀏覽器中... –

+0

@DamienPirsy基本支持(無附加文件):Chrome 7+,Firefox 4.0+,Internet Explorer 10+,Opera 12+,Safari 5+ 檢查出來:[link](https://developer.mozilla.org/en-US/docs/Web/API/FormData/FormData#Browser_compatibility) –

相關問題