簡體   English   中英

通過AJAX將JavaScript值返回給PHP

[英]Return JavaScript value to PHP through AJAX

是的,有很多與此有關的主題,但是沒有人真正發布完整的代碼,因此我不知道該怎么做。 我將不勝感激。 我正在使用一些自定義API(jqgrid),並將說明一些操作。

它是這樣的:

首先有一個PHP函數

$getUnitID = <<<getUnitID //This is how you start a javascript function in this API
function(rowid, selected)
{
    var selr= null;
    if(rowid != null){ 
        selr = jQuery('#grid').jqGrid('getGridParam','selrow');
        return selr;
        } //All this does is give me a value based on a row I click. It works great.

}
getUnitID; // End of JS function

現在我知道我需要執行一些AJAX。 但我不知道何時,何地或如何。 我知道閱讀手冊的內容,但這並不總是有用。 我仍然迷路了(已經3個小時了)。 我收集到的應該是AJAX,但是它在哪里呢?

$.ajax({
        type: "POST",
        url: "webpage.php",
        dataType: "json",
        data: selr,      
        success: function(data) { 
        alert (data);
        }
    });

我不知道如何實現該AJAX調用。

最終目標是將var“ selr”中的數據放入簡單的php函數中,例如$ myVariable。

感謝您的幫助和時間。

這就是我嘗試結合的方式

$getUnitID = <<<getUnitID
function(rowid, selected)
{
var selr= null;
if(rowid != null){ 
    selr = jQuery('#grid').jqGrid('getGridParam','selrow');
    //alert (selr);
    return selr;
    }
    $.ajax({
            type: "POST",
            url: "getId.php",
            dataType: "json",
            data: {selr:selr},      
            success: function(data) { 
            alert (data);
            }
        });

}
getUnitID;
$grid->setGridEvent('onSelectRow',$getUnitID);
$pdfButton = array("#pager",array("caption"=>"Create PDF", "onClickButton"=>"js: function(){parent.location='/pdftkphp/example/download.php?id= ". 6 ." '}"));

而單獨的PHP頁面只是

<?php
$rId = $_POST["selr"];
echo $rId + "some ajax stuff";
?>

因此,希望這會有所幫助。 在您的AJAX調用中,您的url正在調用webpage.php-因此大概該頁面應該在等待傳入的變量。 就像是

$myVariable = $_POST["selr"];

因此,以上語句正在檢查POST是否存在一個名為selr的變量,好吧,我們必須告訴AJAX調用以selr發送變量,因此將AJAX調用中的data更改為鍵/值對:

data: {selr:selr}, 

現在, success與參數功能data是你的數據echo ,從你的PHP端回來。 所以說你有:

 $myVariable = $_POST["selr"];
 echo $myVariable + "some ajax stuff";

現在,您的data將包含該echo的輸出。 希望這會有所幫助。

暫無
暫無

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

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