Javascript probleem :)

Status
Niet open voor verdere reacties.

HabbieDreams

Gebruiker
Lid geworden
7 jul 2010
Berichten
23
Hallo daar,

Ik zit met een klein probleempje als ik mijn script aan het testen ben.

Code:
<script type="text/javascript">

function test1 (){

var test3 = testform.test1.value;

document.write(test3);

}

function test2 (){

var test4 = testform.test2.value;

document.write(test4);

}


</script>


<form name="testform">

<input type="text" name="test1">
<input type="text" name="test2">
<input type="button" name="button" value="calculate" onClick="test1();test2();"

</form>

Dit is een voorbeeld scriptje wat het probleem weergeeft. Het probleem is dat als ik twee waarde invoer en op de button klik, ik alleen de waarde van de eerste function te zien krijg.

Kan iemand mij vertellen hoe ik dit kan verhelpen, wat ik erg zou waarderen.


Mvg,

Joeri Smits
 
:oIk heb echt Nihil verstand van JAVA script's te maken ( Vbs scripts beetje wel ), maar wel gebruik ik scripts voor andere doelen enz..enz.. dus als ik jouw script in exe. bestand converteren wil, krijg ik ook een foutmelding
( kijk klein screenshot ! :D ) misschien zeg je dat wat ? :confused:

sp91d2.jpg
... syntaxisfout ?? :(
 
Laatst bewerkt:
Hier heb ik helaas niet echt veel aan, <script type="text/javascript"> is gewoon een TAG die aangeeft dat een javascript gaat beginnen.

Toch bedankt voor het meedenken :)

P.S. Dit is Javascript geen JAVA ;D
 
Laatst bewerkt door een moderator:
:confused: Nee ik dacht dat die syntaxisfout wat met fout bij jou te maken heeft ?:(
 
Dat komt omdat document.write de bestaande inhoud wist en dan toevoegt wat je het hebt meegegven. Je roept twee keer document.write aan, dus de tweede waarde gaat over de eerste heen, en wist hem. document.write is dan ook geen goede manier om je resultaten op de pagina te krijgen. Je kunt beter een inputveld gebruiken, en daar de value van veranderen. Of een lege div maken en daar met innerHTML in schrijven. In de meese gevallen zou ik voor het laatste kiezen.
 
Laatst bewerkt:
Misschien werkt dit beter voor je, ik heb er 1 function van gemaakt voor je waarmee je hetzelfde bereikt

HTML:
<script type="text/javascript">

function test1 (){

var test3 = testform.test1.value;
var test4 = testform.test2.value;
document.write(test3+ ' '+test4);

}


</script>


<form name="testform">

<input type="text" name="test1">
<input type="text" name="test2">
<input type="button" name="button" value="calculate" onClick="test1();"

</form>

Wat je ook kunt doen, vind ik persoonlijk mooier dam de document.write ;)

HTML:
<script type="text/javascript">

function testForm()
{

    var val1 = document.getElementById('val1').value;
    var val2 = document.getElementById('val2').value;
    
    document.getElementById("feedback").innerHTML = val1+ ' '+val2;
}


</script>


<div id="feedback">
    <form name="testform">

        <input type="text" name="val1" id="val1" />
        <input type="text" name="val2" id="val2" />
    
        <input type="button" name="button" value="calculate" onClick="testForm();" />

    </form>
</div>
 
Laatst bewerkt:
@martinmeijer: Let wel op dat je bij het tweede voorbeeld dus het formulier overschrijft met de waarde van het formulier.

De code in het eerste bericht is niet heel beroerd, de HTML moet alleen gerepareerd worden en vermoedelijk klapt Javascript over je "test" benamingen voor functies
Deze code werkt prima: http://jsfiddle.net/z5jux/
 
@Tha Devil, je bedoelt dat het formulier verdwijnt nadat de invoer gedaan is? Je kunt de div tag ook los zetten zodat je de formulier blijft zien. Ik had dit zo gedaan omdat in zijn eerste bericht ook de hele form verdwijnt, maar hier heb je zeker gelijk
 
Hey Jongens,

Ik heb het al voor elkaar gekregen :)

Ik heb inderdaad zoals hier boven vermeld staat Inner HTML gebruikt om het voor elkaar te krijgen.

Bedankt voor al jullie reacties en hulp!

Mvg,

Joeri
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan