簡體   English   中英

jQuery獲取發布數據

[英]jQuery get post data

有沒有辦法在jQuery中獲取POST值?

jQuery用於客戶端Javascript。 您使用服務器端語言獲取POST值。 您可以通過將服務器端與客戶端混合來提供它們:

<script>
(function() {
 var x = "<?php echo ( isset( $_POST['name'] ) && $_POST['name'] != '') ? $_POST['name'] : '';?>";
})();
</script>
$("form").serializeArray();

參考http://api.jquery.com/serializeArray/

不,您可以使用任何后端來編寫頁面上的隱藏字段或寫出帶有數據的javascript腳本標記。

如果您使用AJAX方法發布,您可以在通過AJAX發布之前發回值或捕獲它們。

在表單元素http://api.jquery.com/serializeArray/上使用serializeArray。

要從另一個頁面偵聽POST值? 不是我所知道的。 但是,您可以通過ajax將POST請求提交到服務器端腳本,並讓服務器端腳本返回以前的POST值(例如,如果將它們存儲在用戶的會話中)。

POST數據在請求正文中發送,通常采用application / x-www-form-urlencoded格式。

這里的最后一行是你想要的:

POST /path/script.cgi HTTP/1.0
From: office@otb.expert
User-Agent: HTTPTool/1.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 36

email=office@otb.expert&user+name=we

您可以從PHP訪問請求正文$ _POST。 如果正文不符合您的預期格式,您可以嘗試:

$postdata = file_get_contents("php://input"); $_POST = json_decode($postdata);

從服務器端,您可以在javascript中注入所需的內容:

<script>
  var x = "<?php echo ( isset( $_POST['email'] ) ) ? $_POST['email'] : 'we@otb.expert';?>";
</script>

如果您仍然需要將數據從一個頁面傳輸到另一個.html頁面並避免使用.php文件,則需要在重定向到下一頁之前保存數據,而不是通過讀取相同的存儲來恢復數據。

因此,使用您的數據庫在頁面之間導航時保​​持應用程序狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM