Avatar billede cdygaard Nybegynder
26. april 2004 - 15:17 Der er 11 kommentarer og
1 løsning

Java funktion og setInterval

Jeg har lavet et script der skulle fungere på den måde, at brugeren afhængig af hvad han eller hun vælger i nogle select boxe, får vist en tekststreng (url) som varierer afhængig af valgene.
Java funktionen er includeret i en php funktion jeg har kaldt html_header, der udskriver de første html tags fra <HTML> til <BODY>. Funktionen ser sådan her ud:

function html_header($title) {
  ?>
  <HTML><HEAD><TITLE><?php echo $title; ?></TITLE>
  <LINK TYPE='text/css' REL='stylesheet' HREF='style_sng.css'>
  <SCRIPT LANGUAGE="Javascript" RUNAT="CLIENT">
      Function myURL_onload()
      {
        var myURL;
    myURL = window.document.form[0].returnaddress.value + "?domain=" + window.document.form[0].domain.value + _
    "&id=" + window.document.form[0].ID.value + "&passwords=" + window.document.form[0].passwords.value + _
    "&letters=" + window.document.form[0].letters.value + "&numerals=" + window.document.form[0].numerals.value;
    document.write myURL;
      }
  </SCRIPT>
  </HEAD><BODY>
  <?php
}

Funktionen ligger i filen common.inc som er inkluderet i filen advanced.php, hvor jeg så bruger funktionen setInterval, hvilket ser sådan her ud:

document.write ("<FONT CLASS='stdo'>" + setInterval('myURL_onload()', '100') + "</FONT>");

Det output jeg får på siden ser sådan her ud: 33360149 ligemeget hvad jeg vælger i select boxene. Outputet skulle være en url med et domeænenavn og nogle variabler.

Hvad gør jeg forkert?
Avatar billede mm12010 Nybegynder
26. april 2004 - 15:22 #1
<FONT CLASS='stdo'>&nbsp;</FONT>
<script type="text/javascript">
setInterval('myURL_onload();', 100);
</script>
Avatar billede mm12010 Nybegynder
26. april 2004 - 15:24 #2
sorry - sådan:

<SCRIPT LANGUAGE="Javascript" RUNAT="CLIENT">
      Function myURL_onload()
      {
        var myURL;
    myURL = window.document.form[0].returnaddress.value + "?domain=" + window.document.form[0].domain.value + _
    "&id=" + window.document.form[0].ID.value + "&passwords=" + window.document.form[0].passwords.value + _
    "&letters=" + window.document.form[0].letters.value + "&numerals=" + window.document.form[0].numerals.value;
    document.getElementById("url").innerHTML=myURL;
    setTimeout('myURL_onload();', 100);
      }
  </SCRIPT>

...

<FONT CLASS='stdo' id="url">&nbsp;</FONT>
Avatar billede roenving Novice
26. april 2004 - 15:25 #3
Det ser da godt nok noget mystiskst ud ...

Man kan da ikke kalde en document.write fra en javascript-funktion, som kører i interval ?-)

-- og jeg kiggede efter noget Java-kode, har du også sådan noget ?o]
Avatar billede cdygaard Nybegynder
26. april 2004 - 15:32 #4
Jeg har kopieret din funktion til common.inc, og skrevet:
document.write ("<FONT CLASS='stdo' id='url'>&nbsp;</FONT>");
i advanced.php, men jeg får ikke noget output!
Avatar billede mm12010 Nybegynder
26. april 2004 - 15:37 #5
function myURL_onload(){
    var myURL = document.form[0].returnaddress.value + "?domain=" + document.form[0].domain.value + "&id=" + document.form[0].ID.value + "&passwords=" + document.form[0].passwords.value + "&letters=" + document.form[0].letters.value + "&numerals=" + document.form[0].numerals.value;
    document.getElementById("url").innerHTML=myURL;
    setTimeout('myURL_onload();', 100);
    }
Avatar billede cdygaard Nybegynder
26. april 2004 - 15:37 #6
Hele formen er skrevet i javascript.
Avatar billede cdygaard Nybegynder
26. april 2004 - 15:39 #7
Der kommer stadig ikke noget output!
Avatar billede mm12010 Nybegynder
26. april 2004 - 15:40 #8
har du et link eller kan du poste hele koden her?
Avatar billede cdygaard Nybegynder
26. april 2004 - 15:44 #9
Her er advanced.php:

<?php
include("common.inc");
$title = ("Simple Name Generator");
html_header($title);

include("start.php");

//BODY
//Homepage Table
print ("<TABLE CELLPADDING='0' CELLSPACING='0' BORDER='0' WIDTH='650' HEIGHT='600' VALIGN='TOP'
        BGCOLOR='#FFFFFF'></CENTER>");
//print ("<TR><TD><H1>Simple Name Generator</H1></TD></TR>");
print ("<TR><TD VALIGN='TOP' HEIGHT='100'><A HREF='default.php'>");
print ("<IMG SRC='i/h-advancedpasswordgenerator.gif' BORDER='0'></A></TD></TR>");
print ("<TR><TD VALIGN='TOP'><CENTER><TABLE></CENTER><TR><TD WIDTH='450'><H3>");
print ("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;");

print ("</TD></TR></TABLE>");
?>

<SCRIPT type="text/JavaScript" RUNAT="CLIENT">
  document.write ("<FORM ACTION='advanced.php' METHOD='POST'>");
  document.write ("<FONT CLASS='stdr'>");
  document.write ("<IMG SRC='i/Spacer.gif' WIDTH='50'>domain = ");
  document.write ("<SELECT NAME='Domain'><OPTION VALUE='http://www.somedomain.com'>");
  document.write ("http://www.somedomain.com</OPTION><OPTION VALUE='-'>-</OPTION></SELECT>");
  document.write ("<IMG SRC='i/Spacer.gif' WIDTH='50'>id = ");
  document.write ("<SELECT NAME='ID'><OPTION VALUE='nFl89Op6'>nFl89Op6</OPTION>");
  document.write ("<OPTION VALUE='-'>-</OPTION></SELECT><BR>");
  document.write ("<IMG SRC='i/Spacer.gif' WIDTH='50'>");
  document.write ("returnaddress = <SELECT NAME='ra'><OPTION VALUE='http://www.somedomain.com/advanced.php'>");
  document.write ("http://www.somedomain.com/advanced.php</OPTION><OPTION VALUE='-'>-</OPTION></SELECT><BR>");
  document.write ("<IMG SRC='i/Spacer.gif' WIDTH='50'>passwords = ");
  document.write ("<SELECT NAME='passwords'><OPTION VALUE='1'>1</OPTION><OPTION VALUE='2'>2</OPTION>");
  document.write ("<OPTION VALUE='3'>3</OPTION><OPTION VALUE='4'>4</OPTION><OPTION VALUE='5'>5</OPTION>");
  document.write ("<OPTION VALUE='6'>6</OPTION><OPTION VALUE='7'>7</OPTION><OPTION VALUE='8'>8</OPTION>");
  document.write ("<OPTION VALUE='9'>9</OPTION><OPTION VALUE='10'>10</OPTION><OPTION VALUE='11'>11</OPTION>");
  document.write ("<OPTION VALUE='12'>12</OPTION><OPTION VALUE='13'>13</OPTION><OPTION VALUE='14'>14</OPTION>");
  document.write ("<OPTION VALUE='15'>15</OPTION><OPTION VALUE='16'>16</OPTION><OPTION VALUE='17'>17</OPTION>");
  document.write ("<OPTION VALUE='18'>18</OPTION><OPTION VALUE='19'>19</OPTION><OPTION VALUE='20'>20</OPTION>");
  document.write ("<OPTION VALUE='21'>21</OPTION><OPTION VALUE='22'>22</OPTION><OPTION VALUE='23'>23</OPTION>");
  document.write ("<OPTION VALUE='24'>24</OPTION><OPTION VALUE='25'>25</OPTION><OPTION VALUE='26'>26</OPTION>");
  document.write ("<OPTION VALUE='27'>27</OPTION><OPTION VALUE='28'>28</OPTION><OPTION VALUE='29'>29</OPTION>");
  document.write ("<OPTION VALUE='30'>30</OPTION><OPTION VALUE='31'>31</OPTION><OPTION VALUE='32'>32</OPTION>");
  document.write ("<OPTION VALUE='33'>33</OPTION><OPTION VALUE='34'>34</OPTION><OPTION VALUE='35'>35</OPTION>");
  document.write ("<OPTION VALUE='36'>36</OPTION><OPTION VALUE='37'>37</OPTION><OPTION VALUE='38'>38</OPTION>");
  document.write ("<OPTION VALUE='39'>39</OPTION><OPTION VALUE='40'>40</OPTION></SELECT>");
  document.write ("<IMG SRC='i/Spacer.gif' WIDTH='50'> letters = ");
  document.write ("<SELECT NAME='letters'><OPTION VALUE='1'>1</OPTION><OPTION VALUE='2'>2</OPTION>");
  document.write ("<OPTION VALUE='3'>3</OPTION><OPTION VALUE='4'>4</OPTION><OPTION VALUE='5'>5</OPTION>");
  document.write ("<OPTION VALUE='6'>6</OPTION><OPTION VALUE='7'>7</OPTION><OPTION VALUE='8'>8</OPTION>");
  document.write ("<OPTION VALUE='9'>9</OPTION><OPTION VALUE='10'>10</OPTION><OPTION VALUE='11'>11</OPTION>");
  document.write ("<OPTION VALUE='12'>12</OPTION></SELECT><IMG SRC='i/Spacer.gif' WIDTH='50'>numerals = ");
  document.write ("<SELECT NAME='numerals'><OPTION VALUE='1'>1</OPTION><OPTION VALUE='2'>2</OPTION>");
  document.write ("<OPTION VALUE='3'>3</OPTION><OPTION VALUE='4'>4</OPTION><OPTION VALUE='5'>5</OPTION>");
  document.write ("<OPTION VALUE='6'>6</OPTION><OPTION VALUE='7'>7</OPTION><OPTION VALUE='8'>8</OPTION>");
  document.write ("<OPTION VALUE='9'>9</OPTION><OPTION VALUE='10'>10</OPTION><OPTION VALUE='11'>11</OPTION>");
  document.write ("<OPTION VALUE='12'>12</OPTION></SELECT><BR><IMG SRC='i/Spacer.gif' WIDTH='50'>");
  document.write ("<FONT CLASS='stdo' id='url'>&nbsp;</FONT>");
  document.write ("<BR><BR><CENTER><INPUT TYPE='image' SRC='i/generate.gif'></CENTER>");
  document.write ("</FONT></FORM>");
</SCRIPT>

<?
include("end.php");   
?>
Avatar billede mm12010 Nybegynder
26. april 2004 - 16:07 #10
det var lidt noget rod, men dette burde virke:

function myURL_onload(){
    var myURL = document.forms[0].ra.value + "?domain=" + document.forms[0].Domain.value + "&id=" + document.forms[0].ID.value + "&passwords=" + document.forms[0].passwords.value + "&letters=" + document.forms[0].letters.value + "&numerals=" + document.forms[0].numerals.value;
    document.getElementById("url").innerHTML=myURL;
    setTimeout('myURL_onload();', 100);
    }
    window.onload=myURL_onload;
Avatar billede cdygaard Nybegynder
26. april 2004 - 16:09 #11
Tak for det, det virkede. ;0)
Avatar billede mm12010 Nybegynder
26. april 2004 - 16:10 #12
selv tak :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
13 min siden Ny printer, men hvilken Af mort1 i Printere
I går 19:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging