2012-10-31 19 views
10
<head> 
<script type="javascript"> 
function display() 
    { 
     document.getElementById("textField1").value = "abc"; 
    } 
</script> 
</head> 
<body> 

<form id="form1" action="http://google.com"> 

<input id="textField1" type="text" value="0" align="right" size="13"/><br> 

<input id="button1" type="button" value="1" onclick="display()"> 
</form> 
</body> 

, ale wartość pola tekstowego się nie zmienia.jak zmienić wartość pola tekstowego HTML za pomocą javascript

Jakieś pomysły, co robię źle?

+0

Chcę, żeby to się zmieniło z "0" na "abc" cóż, tak naprawdę tworzę kalkulator i przekażę "1", ale w niedalekiej przyszłości, kiedy ten problem zostanie rozwiązany –

Odpowiedz

8

spróbować

<script type="text/javascript"> 

zamiast

<script type="javascript"> 

. Uważam, że ta ostatnia nie jest poprawną składnią.

Wyjmowanie type atrybutów całkowicie działa tak samo:

<script> 
+0

Lepiej go usunąć całkowicie. –

+0

Chciałbym powiedzieć, dodać to wspomnieć, że można po prostu zrobić

0

Nie ma nic złego w tym kodzie, działa dobrze w this fiddle.

Spekuluję tylko, ale można spróbować usunąć atrybut type tagu script lub zmienić go na type="text/javascript", który byłby właściwym typem. Jeśli go nie określisz, przeglądarka domyślnie uzna to za JavaScript.

2

Twoja linia

document.getElementById("textField1").value = "abc"; 

jest prawidłowy, spróbuj

<head> 
<script> 
function display() { 
     document.getElementById("textField1").value = "abc"; 
    } 
</script> 
</head> 
<body> 

<form id="form1" action="http://google.com"> 

<input id="textField1" type="text" size="13" value="clear" /><br> 

<input type="button" onclick="display()"> 
</form> 
</body> 
3

To musi być

<script type="text/javascript"> 
function display() 
    { 
     document.getElementById("textField1").value = "abc"; 
    } 
</script> 

i nie

<script type="javascript"> 
function display() 
    { 
     document.getElementById("textField1").value = "abc"; 
    } 
</script> 
0

To rzeczywiście poprawne, ale jeśli to nie działa, spróbuj tak:

document.getElementById("textfield1").innerHtml = "ABC"; 
0

W przypadku, gdy pole tekstowe nie posiadającego atrybut id i mający atrybut name Następnie

użycie

document.getElementsByName("name")[0].value="ert";

getElementsByName() zwraca tablicę obiektów z tej konkretnej nazwy, dlatego używamy indeks 0.

Powiązane problemy