Javascript in templates Topic is solved

Nederlandse ondersteuning voor CMS Made Simple

Moderators: velden, Rolf

Post Reply
septiq

Javascript in templates

Post by septiq »

Hallo mensen,

Ik heb een vraagje waar ik na lang zoeken het antwoord nog niet op heb gevonden.
Misschien kan een van jullie mij verder helpen.

Het is me gelukt om een module te maken en hierin variabelen door te geven. Dus als ik een formulier in mijn module heb kan ik de gegevens netjes verwerken. Wat ik nu zou willen is dat ik de javascript, die in de head van een template staat, een waarde mee kan geven uit bijv. het formulier.
Zoiets als: document.element.value = mijn_variabele_uit_het_verstuurde_formulier;

Dus als ik een formulier submit moet bij het herladen van de pagina de javascript aangepast worden.
Omdat de js. code in een {literal} blok staat lukt het me niet om via php dit aan te passen.
Weet iemand hoe dit te realiseren is of waar ik meer informatie kan vinden om mee verder te gaan?

Alvast bedankt.
Dee
Power Poster
Power Poster
Posts: 1197
Joined: Sun Mar 19, 2006 8:46 pm
Location: the Netherlands

Re: Javascript in templates

Post by Dee »

septiq wrote:Omdat de js. code in een {literal} blok staat lukt het me niet om via php dit aan te passen.

Je kunt het {literal} blok gewoon even onderbreken met {/literal} en weer verder laten gaan waar nodig met {literal}...

Bijvoorbeeld in de Guestbook module (templates/db/guestbook-form-default.tpl):

Code: Select all

               function checkLen() {
{/literal}
                  maxLen="{$max_textleng}";
                  sTooLong = "{$toolong}";
{if $wysiwyg}
{literal}
                  var oEditor =

Of in de XSPF module (templates/admin_add_playlist_songs.tpl):

Code: Select all

      var dest   = 'moduleinterface.php?mact=EnhancedXSPF,m1_,admin_add_playlist_songs,0&m1_playlist_id={/literal}{$playlist->Id}{literal}' + '&submitted=1&' + form_vars + '&' + song_vars;


Grtz,
D
septiq

Re: Javascript in templates

Post by septiq »

Hallo Dee,

Bedankt voor je reactie.

Het probleem wat ik hiermee heb is dat mijn javascript geladen moet worden vanuit de tags in de template. Als de javascript buiten de tags staat dan werken ze helaas niet meer.

Deze template die ik gebruik heb ik aangemaakt via het admin panel (layout-templates).
Als ik in die template de {literal} onderbreek zit ik nog met het probleem dat ik niet de juiste php code kan gebruiken.

Ik heb al geprobeerd een custom tag aan te maken en deze te gebruiken, en dit lukt tot op een zekere hoogte wel. Al lukt het me niet om in deze tag de $params uit te lezen. Dit geeft een lege array terug terwijl ik in mijn module toch echt parameters heb meegegeven, hetzij via een formulier, hetzij uit een database.


Misschien ben ik ook wel compleet verkeerd bezig, om dat uit te sluiten beschrijf ik hieronder even wat ik hoe probeer te bereiken.

Ik heb een module gemaakt. Deze module laad ik vanuit een aangemaakte pagina via {module} tag, aan deze module kan ik variabelen meegeven of de defaults uit een database tabel halen.
De module vereist bepaalde javascript code welke dus in de van de template moeten staan. Wat ik wil is deze javascript aanpassen aan de hand van de gegevens die bij deze module horen. Dit betekend dus dat de template die ik aan de pagina gekoppeld heb een soort dynamische javascript moet genereren.

Simpel uitgelegd:

Site laad met standaard javascript (in template)
Module geselecteerd door gebruiker (vanuit menu)
In module variabelen aangepast, submitten.
Pagina opnieuw laden met aangepaste javascript tussen tags (in template niet in de module!)

Heb jij of iemand anders nog een suggestie?
septiq

Re: Javascript in templates

Post by septiq »

Hallo Dee en alle anderen

Vergeet het bovenstaande stukje maar, ik heb het voor elkaar.
Ik was stom, heel stom bezig, en was continu vergeten een tag te gebruiken.
Hierdoor lukte het dus niet om de javascript buiten de tags te plaatsen. ;D

Nadat ik alles goed bekeken had en de tag geplaatst had lukte het dus om via php in de module class de javascript aan te passen!
Post Reply

Return to “Dutch - Nederlands”