2013-08-29 70 views
0

我想通過一個文本框輸入用戶通過我的jquery代碼傳遞給一個php變量的值,但是我通過POST在PHP端沒有收到任何值。我使用.change和.post ,這裏有人知道如何正確地做到這一點嗎? 這裏是我的代碼:dataType: 'html',如何正確地傳遞一個jQuery值到PHP使用Ajax?

$(document).ready(function(){ 
$("#packagename").change(function(){ 
    var packagename = $('#packagename').val(); 
    var url = '{{url}}'; //localhost/test/test.php 
    $.ajax({ 
    type: 'post', 
    url: url, 
    dataType:html, 
    data:{'val':packagename}, 
    }); 
    }); 
}); 
+1

http://api.jquery.com/jQuery.post/ –

+0

你不能用JavaScript來改變PHP變量,因爲PHP是服務器端語言,因此完全不知道瀏覽器中發生了什麼。 POST請求在您要發佈的頁面上處理,並且不會影響您所在的頁面。 –

+0

可能重複的[我怎樣才能上傳文件與jQuery異步?](http://stackoverflow.com/questions/166221/how-can-i-upload-files-asynchronously-with-jquery) –

回答

0

,我可以看到副手是,htmldataType:html,需要有周圍的引號像這樣唯一的問題。否則,您的代碼將查找變量html,找不到它,併發出錯誤。

+0

我已經做了,但仍然我沒有收到我的PHP代碼中的任何值: echo $ _POST ['val'] –

+0

您的javascript控制檯是否顯示任何錯誤?你有沒有從服務器得到任何迴應? – Divey

+0

不,它不顯示任何錯誤.. –

0

http://api.jquery.com/jQuery.post/

dataType 
Type: String 
The type of data expected from the server. Default: Intelligent Guess (xml, json, script, text, html). 

變化dataType: html,dataType: 'html',

+0

我已經做了,但我仍然沒有收到我的PHP代碼中的任何值: echo $ _POST ['val'] –

+0

@NeilAntonio在控制檯檢查錯誤 –

+0

我已經做了,但我沒有顯示任何錯誤... –

1

嘗試

$(document).ready(function(){ 
$("#packagename").change(function(){ 
    var packagename = $('#packagename').val(); 
    var url = '{{url}}'; //localhost/test/test.php 
    $.ajax({ 
    type: 'post', 
    url: url, 
    dataType:text, 
    data:{'val':packagename}, 
    success:function(result){ 
alert(result); 
} 
    }); 
    }); 
}); 
+0

我試過了,源代碼顯示在對話框中.. –

+0

@NeilAntonio如果它有一個警報顯示,它意味着你的JS工作,那麼你期待什麼? –

+0

我期待它將值傳遞給php ... –

0

你有沒有嘗試過把網址在URL字段中,而不是無論該對象是您要使用?

我會假設你並沒有試圖對當前頁面進行ajax操作,並期望php變量顯示在當前頁面上。

+0

我試圖將它跳轉到當前頁面...您對我如何正確處理它有任何想法嗎? –

+0

若要更新當前頁面,只需使用javascript即可完成。例如,爲了將值存儲在數據庫中,您可以將其另存爲另一個用於寫入數據庫的php頁面。你可以同時模擬更新當前頁面。 – hireSwish

相關問題