login  Naam:   Wachtwoord: 
Registreer je!
 Forum

javascript dmv php

Offline MadMike - 12/06/2005 16:21
Avatar van MadMikeLid hoi allemaal!
Ik zit met het volgenede. Ik heb een javascript functie die afhankelijk van het aantal database items een x-aantal keer een bepaalde functie in javascript moet aanroepen. Nu heb ik het als volgt opgelost:

  1. <? echo "<script type=\"text/javascript\">\n";
  2. echo "window.onload = function() {\n";
  3. while($select_comm_cat = mysql_fetch_array($query_comm_cat)) {
  4. $cat_id = $select_comm_cat['id'];
  5. echo "initializeMenu(\"PZMenu$cat_id\", \"PZActuator$cat_id\");\n";
  6. }
  7. echo "}\n";
  8. echo "</script>";
  9. ?>


(die \n heb ik er achter gezet zodat ik in de source duidelijk overzicht krijg...)

Als ik dan de source bekijk van dit stukje zie ik dit:
  1. <script type="text/javascript">
  2. window.onload = function() {
  3. initializeMenu("PZMenu1", "PZActuator1");
  4. initializeMenu("PZMenu2", "PZActuator2");
  5. }
  6. </script>


Maar helaas geeft dit niet het gewenste resultaat. Maar als ik dit stukje uit de bron haal en dat ipv de php code plaats dan krijg ik WEL het juiste resultaat.

Waarom wordt het stukje niet goed uitgevoerd als ik het door php laat genereren?

6 antwoorden

Gesponsorde links
Offline prorsoft - 12/06/2005 19:36 (laatste wijziging 12/06/2005 19:36)
Avatar van prorsoft PHP gevorderde wat moet het juiste resultaat dan wel wezen??

en waarom moet dat onload=function erbij?
zo kan het toch ook, dan voert ie de functie ook bij het laden uit??:
  1. <? echo "<script type=\"text/javascript\">\n";
  2. while($select_comm_cat = mysql_fetch_array($query_comm_cat)) {
  3. $cat_id = $select_comm_cat['id'];
  4. echo "initializeMenu(\"PZMenu$cat_id\", \"PZActuator$cat_id\");\n";
  5. }
  6. echo "\n";
  7. echo "</script>";
  8. ?>
Offline MadMike - 13/06/2005 15:07
Avatar van MadMike Lid dit moet het resultaat zijn (zoals ik hierboven al zei):
  1. <script type="text/javascript">
  2. window.onload = function() {
  3. initializeMenu("PZMenu1", "PZActuator1");
  4. initializeMenu("PZMenu2", "PZActuator2");
  5. }
  6. </script>


Dit krijg ik ook als ik de bron bekijk, MAAR hij wordt niet goed uitgevoerd. Kopieer is deze tekst uit de bron EN vervang de php code door de code UIT de bron, dan werkt het wel:o
Offline prorsoft - 13/06/2005 15:10
Avatar van prorsoft PHP gevorderde probeer gewoon mijn script!
dit werkt niet in sommige browsers!
Offline nemesiskoen - 13/06/2005 15:12 (laatste wijziging 13/06/2005 15:13)
Avatar van nemesiskoen Gouden medaille

PHP expert
doe is gewoon:

  1. <html>
  2. <head>
  3. <script language='javascript'>
  4. function jouwFunctie() {
  5. <?php
  6. while( $select = MySQL_fetch_array( $query ) ) {
  7. $catId = $select['id'];
  8. echo "initializeMenu('PZMenu". $cat_id ."',
  9. 'PZActuator". $cat_id ."');
  10. \n";
  11. }
  12. ?>
  13. }
  14. </script>
  15. </head>
  16. <body onload='javascript:jouwFunctie()'>
  17.  
  18. </body>
  19. </html>
Offline Gerard - 13/06/2005 17:12
Avatar van Gerard Ouwe rakker anders zet je het in de body en gebruik je document.write
is dat geen workaround/oplossing?
Offline MadMike - 15/06/2005 16:37
Avatar van MadMike Lid helaas dit werkt ook niet:\
Ik voer het wel plain tekst in.
Zo vaak veranderen die waarden toch niet in de database
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.209s