2011-08-10 29 views
5

Co jest nie tak z następującym htmla i kodu javascriptJavaScript do konwersji małych liter na wielkie litery

formToConvert.html

<html> 
    <head> 
     <title>ExampleToConvert</title> 
     <script type = "text/javascript" src = "con.js"></script> 
    </head> 
    <body> 
     <form id ="myform"> 
      <input type = "text" id = "field1" value = "Enter text Here"/><br/> 
      <input type ="submit" value = "submit" onclick = "convert()"/> 
     </form> 
    </body> 
</html> 

con.js

function convert() 
{ 
    var str ; 
    str = document.getElementById("field1"); 
    document.writeln(str.toUpperCase()); 
} 

Dlaczego powyższy kod nie daje mi pożądanego rezultatu?

+1

Co wynik to dać? – rlemon

+0

Ludzie zdobywają reputację, aby zgarnąć niewinne pytanie, dlaczego kumple? – SMI

+0

@SMI: Nie zagłosowałem na to pytanie, ale jedna osoba prawdopodobnie zrobiła to, ponieważ PO nie określił różnicy między oczekiwanym wynikiem a faktycznym wynikiem. Innymi słowy, nie wykryli niepożądanego objawu (objawów). –

Odpowiedz

7

Spróbuj:

str = document.getElementById("field1").value; 

To dlatego getElementById zwraca referencję do elementu HTML, a nie "tekst", który jest zawarty -value .

6

Musisz zmienić go na to:

var str = document.getElementById("field1").value; 
document.writeIn(str.toUpperCase()); 
1

Poniższa zmiana powinna rozwiązać problem:

str = document.getElementById("field1"); 

powinny być

str = document.getElementById("field1").value; 
Powiązane problemy