2013-12-04 2 views
-2

Правильный код. Но это не работает в моем браузере. У меня нет подсказки, почему мой браузер не учитывает.Javascript считает, что

<SCRIPT LANGUAGE="JavaScript"> 
var count = 0; 
var countEl = document.getElementById("count"); 

function plus(){ 
    count++; 
    countEl.value = count; 
} 

function minus(){ 
    count--; 
    countEl.value = count; 
} 
</SCRIPT> 

<div id="input_div"> 
    <input type="text" size="25" value="0" id="count"> 
    <input type="button" value="-" id="moins" onclick="minus()"> 
    <input type="button" value="+" id="plus" onclick="plus()"> 
</div> 

ответ

2

В то время, когда скрипт работает, нет элементов, поскольку они еще не загружены.
Легко исправить было бы просто переместить сценарий в нижней части:

<div id="input_div"> 
    <input type="text" size="25" value="0" id="count"> 
    <input type="button" value="-" id="moins" onclick="minus()"> 
    <input type="button" value="+" id="plus" onclick="plus()"> 
</div> 

<script type="text/javascript"> 
var count = 0; 
var countEl = document.getElementById("count"); // now this is available 

function plus(){ 
    count++; 
    countEl.value = count; 
} 

function minus(){ 
    count--; 
    countEl.value = count; 
} 
</script> 
+0

typo '

0

Как я могу видеть это у вас на небольшие ошибки в коде ур. Сначала попробуйте найти элемент до того, как он находится в dom. Таким образом, этот document.getElementById ("count") "не возвращает элемент.

Другая часть предназначена для работы onclick и должна быть «;» после имени функции, подобного этому.

<input type="button" value="+" id="plus" onclick="plus();"> 

Но тогда элемент по-прежнему не обновляется, нажимая кнопку. Поэтому поэтому вы должны включить скрипт и переписать его так. То, что я сделал, является привязкой события onclick к элементу в javascript одновременно с созданием функции. Я также изменил так, что переменные объявлены с одним var, и код завернут в функцию самоисполнения, поэтому в глобальной области ничего не объявлено. Надеюсь, мой ответ помог вам, удачи!

HTML

<div id="input_div"> 
    <input type="text" size="25" value="0" id="count"> 
    <input type="button" value="-" id="moins"> 
    <input type="button" value="+" id="plus""> 
</div> 
<script> 
(function(document){ 
var count = 0, 
    countEl = document.getElementById("count"), 
    minus = document.getElementById("moins"), 
    plus = document.getElementById("plus"); 
plus.onclick = function(){ 
    count++; 
    countEl.value = count; 
} 
minus.onclick = function(){ 
    count--; 
    countEl.value = count; 
} 
}(document)); 
</script> 

Вот ссылка на мой fiddle, чтобы проверить код.

Смежные вопросы