Ga naar inhoud

[Javascript] Text toevoegen in textbox...


Aanbevolen berichten

Dag mensen, ik heb de volgende vraag: Ik heb 1 textbox, en daarin typt men een getal. Dit getal zijn meters, dus ik wil dat Javascript er een 'm' achter zet. Tot zover ben ik gekomen: [code:1:adea5728d9]function meters() { start=document.jacht.lengte.value document.jacht.lengte.value=start+" m" }[/code:1:adea5728d9] En de textbox roept de functie aan met onblur(). Maar als ik in de textbox het getal verander, komt er WEER een 'm' achter. Hoe kan ik dit voorkomen? Alvast dank,
Link naar reactie
Bedankt :) Je hebt me een aardig eind op weg geholpen. Maar nu zit ik met een functie, en die werkt: [code:1:a49223ba31]function meters(veld) { start=document.jacht.veld.value if (!isNaN(start)) { start=document.jacht.veld.value+" m" document.jacht.veld.value=start } }[/code:1:a49223ba31] Maar nu wil ik dit in meerdere textboxes gebruiken. Dus ik wil de iets meegeven met de functie. namelijk de veldnaam. Maar hoe kan ik die veld naam nou verwerken in: document.jacht.veld.value Want zoals het er nu staat, ziet ie veld als DE veldnaam. Alvast bedankt voor het antwoord.
Link naar reactie
Alle velden een unieke ID meegeven en vervolgens het scriptje een beetje aanpassen zodat het JS DOM gebruikt:[code:1:fee265cda2]function meters(veld) { var field = document.getElementById(veld); var start = field.value; if (!isNaN(start)) { start=start+" m"; field.value=start; } }[/code:1:fee265cda2]Ben geen JavaScript expert, maar zoiets zou het moeten zijn. - Bas
Link naar reactie
Misschien [i:1fd69fd206]value[/i:1fd69fd206] vervangen door [i:1fd69fd206]getValue()[/i:1fd69fd206]:[code:1:1fd69fd206]function meters(veld) { var field = document.getElementById(veld); var start = field.getValue(); if (!isNaN(start)) { start=start+" m"; field.setValue(start); } }[/code:1:1fd69fd206]Je zult ff zelf moeten zoeken of wachten tot iemand anders je helpt, want vanaf hier is het voor mij ook een kwestie van "gokken". - Bas
Link naar reactie
Je kan ook gewoon voor de "old-fashioned" methode kiezen en de elementen uit de form via de [i:689cac92ab]forms [/i:689cac92ab]en [i:689cac92ab]elements [/i:689cac92ab]collecties aanspreken. [code:1:689cac92ab] function meters(veld) { var field = document.forms["jacht"].elements[veld]; var start = field.value; if (!isNaN(start)) { start=start+" m"; field.value=start; } } [/code:1:689cac92ab] Overigens, als je de functie onblur aanroept vanuit een text input kan je nog beter [i:689cac92ab]this[/i:689cac92ab] meegeven: [code:1:689cac92ab] <input type="text" onblur="meters(this)" /> [/code:1:689cac92ab] [code:1:689cac92ab] function meters(veld) { var start = veld.value; if (!isNaN(start)) { start=start+" m"; veld.value=start; } } [/code:1:689cac92ab]
Link naar reactie
nodeValue zal niet werken (tenzij je eerst een attribute-node selecteert). Een andere optie is getAttribute gebruiken. Voorbeeldjes (ongetest): [code:1:e0edd5dc70] var field = document.getElementById(veld); var start = field.getAttributeNode("value").nodeValue; [/code:1:e0edd5dc70] [code:1:e0edd5dc70] var field = document.getElementById(veld); var start = field.getAttribute("value"); [/code:1:e0edd5dc70]
Link naar reactie
Ik denk dat een getAttribute of getAttributeNode de letterlijke tekst van de attribute 'value' weergeeft (of zou moeten weergeven). http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-html.html Ziet het dom atttribuut 'value'. getAttribute("value") is dus hetzelfde als de defaultValue dom attribuut. Liever had ik gehad dat ook de html-attributen veranderd zou worden, maar ja...
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...