可能重複:
how to assign a javascript variable to a smarty variable分配JavaScript變量Smarty的變量
我想用JavaScript來指定一個文本框的值Smarty的變量,並調用Smarty的功能,但我不能這樣做。
請指導我。
可能重複:
how to assign a javascript variable to a smarty variable分配JavaScript變量Smarty的變量
我想用JavaScript來指定一個文本框的值Smarty的變量,並調用Smarty的功能,但我不能這樣做。
請指導我。
你不能以簡單的方式做到這一點。在瀏覽器獲取數據之前,PHP和擴展名Smarty在服務器端被解析並運行。當瀏覽器解析服務器發送的HTML,CSS和Javascript時,JavaScript將在客戶端運行。
您將不得不以某種方式發送新的HTTP請求,以發送新數據。你可以通過重新加載整個網頁併發送查詢字符串中的內容(在URL中的?
之後)或通過從JS代碼執行Ajax調用稍微更高級來實現,並使JS對所需頁面進行更改。後者更復雜,需要一些Javascript知識,但不需要重新加載頁面。
你的意思是這樣嗎?
<script>
var foo_bar = {$foo.bar|escape:javascript};
</script>
請注意,如上所述,該值是計算服務器端。
UPD。我現在明白了,你想以相反的方式傳遞價值。不,這是不可能的。
JavaScript在客戶端執行,Smarty - 在服務器端。 JavaScript沒有辦法直接在當前請求中與php(smarty)聯繫。其他方法 - AJAX。 –
Smarty是PHP並運行在**服務器端**。 JavaScript在**客戶端**上運行。當JavaScript執行時,PHP的工作已經完成。 –
[如何將一個JavaScript變量分配給一個smarty變量](http://stackoverflow.com/questions/1271026/how-to-assign-a-javascript-variable-to-a-smarty-variable)和[回聲JavaScript變量變成聰明](http://stackoverflow.com/questions/4633172/echo-javascript-variable-into-smarty)和[變量從Javascript - > Php - > Smarty ...有可能嗎?](http: //stackoverflow.com/questions/6672929/variable-from-javascript-php-smarty-is-it-possible) –