2009-08-08 5 views
0

Ich bin damit beschäftigt, mit AJAX "Teilvorlagen" vom Server zu holen und sie zurück zum Browser zu echotieren. Dies wird dazu führen, dass der gesamte HTML-Code zurück an den Browser gesendet werden muss. Ich habe mich gefragt, ob es eine Möglichkeit gibt, einfach die Variablen zu ändern, aber das ganze HTML dort zu lassen. Etwas wie folgt aus:Smarty Template mit neuen Variablen neu laden?

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

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

Dann etwas wie ..

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

Irgendwelche Ideen?

Danke! Matt Mueller

+2

Smarty ist eine serverseitige Technologie. Sobald die Seite geladen ist, können Sie die Seite nicht mehr mit Smarty ändern, es sei denn, Sie laden die Seite neu. Sie können Smarty in einem AJAX-Aufruf verwenden, aber das wird nur einige neue HTML auf Ihre Seite zurückgeben. Sobald es geladen ist, kann Smarty den Rest der Seite, die der Client bereits geladen hat, nicht sehen. Vielleicht verstehe ich deine Frage nicht. – Cfreak

+0

Vielleicht sollten Sie Ihre Antwort als Antwort Cfreak? –

Antwort

0

Ich fürchte, Cfreak ist richtig Smarty funktioniert auf dem Server, im Wesentlichen tun Sie genau das, was Sie sagen, dass Sie auf dem Client auf dem Server tun möchten. Die einzige Möglichkeit zu tun, was Sie wollen, wäre über Javascript.

Allerdings ist es wirklich ein Problem. es sei denn, Sie HTML-Dateien sind riesig, es sollte keine Probleme für Sie verursachen.