將服務器端PHP變量傳遞給Javascript的最佳方式是什麼?將服務器端變量傳遞給PHP中的PHP
爲了簡化問題,假設我們在PHP($phpVar
)一個變量,我們希望它的值賦給
JavaScript文件的HTML被加載JavaScript變量(jsVar
) - 它們不是建立動態!
有些耐人尋味:
1.打印與PHP加載JavaScript文件之前:
<script language="javascript" type="text/javascript">
var jsVar= <?php echo $phpVar?>;
</script>
2.存儲在DOM(在隱藏要素)
一個。在PHP中:
<span data-name="phpVar" data-value="<?php echo $phpVar?>"></span>
b。閱讀Javascript文件(假設jQuery的可用):
var jsVar= $('span[data-name="phpVar"]').attr('data-value');
3.詢問其與AJAX頁面加載
Obviosly不是最好的解決方案了。不適合於所有情況,而且需要額外的請求......
結論:
- 他們都顯得難看,我...有沒有更好的方法嗎?
- 有沒有任何框架可以處理這種依賴性?請儘量減少服務器重新配置。
我使用選項1 –
解決方法1,如果該值不從用戶交互,解決方案3否則dinamically依賴。你爲什麼不喜歡他們? – dirluca
AJAX是最好的方法,你認爲在哪種情況下,Ajax不好? –