2009-06-23 6 views
1

Ich habe eine HTML-Seite und und externe JavaScript-Datei. Wie kann ich auf den Wert eines input Tags von der HTML-Seite in JavaScript zugreifen? Mein HTML ist wie folgt:Wert von Eingabefeld in HTML in externen Javascript

<form name="formxml"> 
<input type="text" name="xmlname"/> 
<input type="submit" value="Click me please" onclick="loadxml()"/> 
</form> 

In der Javascript-Datei, ich habe versucht:

var name = document.formxml.xmlname.value 

aber das gibt einen Fehler von "document.formxml ist undefiniert"

Was soll ich tun ?

Antwort

3

aussieht wie die externen js die nicht finden können, bilden noch, weil es analysiert hat, bevor die Seite gerendert wird darüber nicht sicher, aber es in einer Funktion setzen und den Aufruf der Funktion auf der Seite (wenn es Laden fertig ist) funktioniert:

function foo() { 
    var name = document.formxml.xmlname.value; 
    alert(name); 
} 

und

<form action="" method="post" name="formxml"> 
    <input type="text" name="xmlname" value="123" id="xmlname"> 
    <input type="button" onclick="foo();"> 
</form> 
+0

Dank MSpreij. Ihre Lösung funktioniert perfekt für mich. –

2

können Sie die folgenden Befehle verwenden, nachdem Sie ein id-Attribut input-Tag

document.getElementById('id').value 
+0

Eine zusätzliche ID ist nicht erforderlich. – Gumbo

2

vielleicht Dokument hinzuzufügen. Formen .formxml.xmlname.value

1

Sie können auch verwenden:

var name = document.forms[0].xmlname.value; //where [0] means the first form on the page 
1
var name = document.formxml.value; //Will not work in all browsers 
var name = document.forms[0].xmlname.value; //safest if the form is the first on the page 
var name = document.getElementById('inputId').value; //works in basically everything assuming the browser has DHTML (which is like everything). 

Der letzte Ihre Eingabe Elem erfordert es eine id = "inputId" hinzugefügt haben.

Auch wird Ihr Code arbeiten, besteht die Form annimmt, wenn die externen js geladen wird (weshalb Formen [0] arbeiten hier und formxml nicht.

+0

Ich versuchte alle drei von diesen. keiner von ihnen arbeitet. Sollen diese Codes auch für das externe Javascript funktionieren? –

+0

von externem JavaScript beziehen Sie sich auf das Importieren aus einer Datei wie ? Ob Sie es so machen oder nur den Code in Ihrem HTML einbetten ist es das gleiche – user105033

1

Versuchen Sie diese

<script> 
    function yourfunction() 
    { 
     var x = document.getElementsByName("fieldname").value; 
    } 
</script> 
Verwandte Themen