[ Opgelost ] JavaScript vraagje

Praat mee over van alles en nog wat!
Forumregels
Dit forum is voor alle zinnige gesprekken buiten phpBB om. Discussies en gesprekken over interessante onderwerpen.

Een nieuw onderwerp moet..:
  • uiteraard voldoen aan de algemene voorwaarden
  • niet passen in de gewone supportfora
  • interessante zijn voor het overgrote deel van onze gebruikers
  • een neutrale of positieve ondertoon hebben
  • anders zijn dan bestaande onderwerpen
Plaats reactie
ElbertF
Berichten: 5803
Lid geworden op: 12 okt 2004, 08:34
Contacteer:

[ Opgelost ] JavaScript vraagje

Bericht door ElbertF » 14 nov 2004, 12:42

Ik ben wat aan het klooien met JavaScript, maar ik kom er niet achter waarom de volgende code niet werkt, of hoe ik het anders zou moeten noteren:

Code: Selecteer alles

<script language="javascript" type="text/javascript">
	function getSize() {
		document.write('800');
	}
</script>

<table width="javascript:getSize()" cellpadding="0" cellspacing="0">
Ik wil een script dus de breedte van een tabel laten bepalen. Iemand een idee?
Laatst gewijzigd door ElbertF op 14 nov 2004, 17:25, 1 keer totaal gewijzigd.

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Re: JavaScript vraagje

Bericht door Bee » 14 nov 2004, 14:52

Code: Selecteer alles

<script language="javascript" type="text/javascript">
// Dit is de breedte van de tabel, opgesloten in een variabele
var getSize = 800

// Dit is de functie die de tabel opent.
function writeTable()
{
    document.write('<table width=\"' + getSize + '\" cellpadding=\"0\" cellspacing=\"0\">');
}
</script>

<script language="javascript" type="text/javascript">writeTable();</script>
Wat jij van plan bent werkt niet, zo kan je Javascript niet aanspreken.

Wat ik gedaan heb, is de breedte in een variable zetten (zie codewoord var), en daarna een functie te maken die de tabel maakt. Die functie kan je dan later aanroepen.

Om de code overzichtelijker te maken, maak ik zelf ook altijd nog een extra functie aan, dat is deze:

Code: Selecteer alles

function w(tekst)
{
document.write(tekst)
}
Als je dan later iets uit wil laten voeren, kan je dan met

Code: Selecteer alles

w('Uitvoer komt hier')
iets in het document zetten. Deze snelfunctie, maar je hebt er nog veel meer, zijn handig voor een eigen scriptlibary.
... Maar ik modereer (nog) niet.

svenn
Berichten: 5001
Lid geworden op: 14 jul 2004, 13:00
Locatie: Kortrijk
Contacteer:

mooi bee

Bericht door svenn » 14 nov 2004, 15:33

mooi bee :thumb: :thumb: goeie uitleg

ElbertF
Berichten: 5803
Lid geworden op: 12 okt 2004, 08:34
Contacteer:

Bericht door ElbertF » 14 nov 2004, 15:35

Dat zou moeten werken, maar is het niet mogelijk alleen de waarde te retourneren? Ik wil die waarde voor meerdere (niet identieke) tabellen gebruiken.

Bedankt :)

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 14 nov 2004, 15:40

Spambot schreef:Dat zou moeten werken, maar is het niet mogelijk alleen de waarde te retourneren? Ik wil die waarde voor meerdere (niet identieke) tabellen gebruiken.

Bedankt :)
Dat is niet mogelijk met Clientside technieken. Misschien kan het nog wel anders. Op deze manier:

Code: Selecteer alles

<script language="javascript" type="text/javascript">
getSize = 700;
writeTable();</script>
Elke keer dat je tabel wil beginnen geef je de nieuwe breedte aan in getSize. Die is dan al gedefineerd, en dus hoeft var er niet meer voor. In de eerder gegeven code van mij zit trouwens een piepklein foutje. Je moet even een ; zetten achter de waarde van getSize, anders krijg je een foutmelding.

Als je wil zal ik binnenkort misschien eens mijn libary opzoeken, en dan online zetten.
... Maar ik modereer (nog) niet.

ElbertF
Berichten: 5803
Lid geworden op: 12 okt 2004, 08:34
Contacteer:

Bericht door ElbertF » 14 nov 2004, 15:40

[ edit ]

Ik probeer het, bedankt!

ElbertF
Berichten: 5803
Lid geworden op: 12 okt 2004, 08:34
Contacteer:

Bericht door ElbertF » 14 nov 2004, 15:55

Het is gelukt, nu kan ik m'n mod updaten:

http://www.phpbb.nl/viewtopic.php?t=13906

:)

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 14 nov 2004, 17:26

Okee, leuke mod trouwens :)
... Maar ik modereer (nog) niet.

Plaats reactie