簡體   English   中英

如何在PHP中將URL變量傳遞給javascript

[英]How to pass URL variables to javascript in PHP

我需要將URL變量帶入PHP頁面,然后將其傳遞到頁面稍后的HTML中的一些javascript中。 這是我需要使用變量的地方:

function dosubmit( ) {
new Ajax.Updater( 'result', 'dial.php', { method: 'post' , parameters: $('dialer').serialize() } );
$('dialer').reset();
}

URL變量的格式為Dialout.php?ext = 1234。 它作為$ ext存儲在PHP中。 結果是將返回的html放在div中,而Dialer是用戶將輸入電話號碼的形式; 我需要將其與$ ext變量一起傳遞給Dial.php。 我的想法是將兩者串聯起來,因為

var ext = "<? $uext ?>";
var par = $('dialer').serialize();
var url = par;

然后使用url代替$('dialer').serialize() 但是,這行不通; dial.php報告永遠不會獲取ext變量。 將URL變量移至PHP,然后移至js,然后再將其發布回PHP的最佳方法是什么? 如果我誤解了一些內容,我會提前道歉,這對我來說是全新的。

謝謝!

您有正確的想法,但需要使用諸如printecho類的命令來填充變量:

var ext = "<? echo $uext ?>";

否則, $uext本身作為PHP語句實際上什么也沒做。

另外,您需要將ext變量包括在參數列表中。 當前的代碼在填充后不會對ext進行任何進一步的引用:

var par = $('dialer').serialize();
par += '&ext=' + ext;

我無法完全理解您想要什么,但是對於類似的情況,我一直在使用:從URL到PHP GET方法,從PHP到JS與JSONencode()(ajax)的JSON,最后是ajax中的POST或GET到php頁面。

不過,應該有更好的方法來做到這一點。

再次查看您的示例時,我發現您在javascript中使用了php,但是缺少回顯,因此應如下所示:

var ext = "<? echo $uext; ?>";

如果它只是您提到的get參數,則沒有理由不能直接在JavaScript中訪問它。 由於似乎您使用的是jQuery,因此您可能想看看Query String Object插件。

暫無
暫無

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

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