2009-08-13 13 views
0

Ich habe ein Problem bezüglich der Zuweisung einer Java-Script-Variable zu einer Smarty-Variable. Hier ist das Code-Snippet.wie man eine Javascript-Variable einer Smarty-Variablen zuweist

function getDateInfo(date, wantsClassName) 
{     
    var as_number = Calendar.dateToInt(date); //This as_number is the variable which should be assigned to smarty variable  
} 

Wie kann ich dies erreichen?

jede mögliche Hilfe geschätzt wird ..

Dank Voranzahlung - Fero

Antwort

6

Sie können keine clientseitige Wert auf eine Smarty Variable zuweisen, wie Smarty eine Template-Sprache, die auf der läuft, ist Server. Smarty-Zuweisungen können nur auf der Serverseite, also aus PHP, erfolgen. ZB:

$smarty->assign('timestamp',time()); 

Also, was Sie tun können, ist so etwas wie:

$smarty->assign('timestamp',time()); //in your PHP script 

    //in your JS 
    var currentTS = {$timestamp}; 

http://www.smarty.net/manual/en/api.assign.php Siehe

+0

danke für deine antwort karim. Aber gibt es noch eine andere Möglichkeit, den Wert der Java-Script-Variablen zu erhalten und sie Smarty zuzuordnen. – Fero

+0

toller karim, danke für deine antwort. Ich habe den Knoten ... – Fero

2

Für alles, was AJAX mit PHP, ich die xajax Bibliothek vorschlagen würde:

http://www.xajax-project.org/

Mit Xajax registrieren Sie eine PHP-Funktion auf Ihren clientseitigen JS-Code zugreifen. Wenn Sie registrierte Funktionen in JS aufrufen, packt xajax die Anfrage mit Parametern und übergibt sie zurück an den Server.

Darüber hinaus können Sie mehr als nur von Ihrem PHP-Code auf den Browser aktualisieren. So etwas wie "Ersetzen Sie Element X durch ... und ersetzen Sie Element Y durch ..." in einer einzigen XHR-Antwort.

xajax macht AJAX-Code sehr sauber.

Verwandte Themen