2009-08-08 29 views
0

我搞亂了使用AJAX從服務器獲取「部分模板」並將它們回顯給瀏覽器。這將導致所有這些HTML必須被髮送回瀏覽器。我想知道是否有一種方法可以簡單地更改變量,但將所有html留在那裏。事情是這樣的:用新變量重新加載Smarty模板?

$smarty->assign("fruit", "apple"); // At Load 

$smarty->assign("fruit", "pear"); // Changed through an AJAX call.. 

然後像..

$smarty->reload('FruitTemplate'); // Reloads all the variables 

任何想法?

謝謝! Matt Mueller

+2

Smarty是一種服務器端技術。一旦加載頁面,除非重新加載頁面,否則無法使用Smarty更改頁面。您當然可以在AJAX調用中使用Smarty,但這隻會將一些新的HTML返回給您的頁面。一旦它被加載,Smarty無法看到客戶端已經加載的頁面的其餘部分。 也許我不明白你的問題。 – Cfreak 2009-08-08 05:33:23

+0

也許你應該發佈你的答案作爲答案Cfreak? – 2009-10-11 20:56:58

回答

0

恐怕Cfreak是正確的smarty在服務器上工作,基本上你正在做你說你想要在服務器上的客戶端上做的事情。做你想做的唯一方法就是通過javascript。

然而,這確實是一個問題。除非你的HTML文件是巨大的,它不應該給你帶來任何問題。