2012-05-16 5 views
0

ОК, у меня серьезные проблемы с DOM, когда я выполняю ЛЮБОЙ Javascript. Следующий фрагмент кода не работает, по какой-то причине я не могу понять. попробуйте использовать функцию getElementById(), скрипт перестает работать. пожалуйста, скажите мне, что я делаю неправильно.Проблемы с объектной моделью документа

var total=0; 
document.write("test"); 
function quickTotal(price,id){ 
    alert(price) 
    alert(id) 
    var object=getElementById(id) 
    if(object.checked == 1){ 
     total=parseFloat(total)+parseFloat(price) 
     alert("add") 
    } 
    if(object.checked == 0){ 
     total=parseFloat(total)-parseFloat(price) 
     alert("subtract") 
} 

    alert(total) 
    //document.floater.price.innerHTML("test") 
} 
+0

нет точки с запятой в функции – jwatts1980

+0

какой это язык? – Krizz

ответ

7

Попробуйте использовать document.getElementById(id) (префикс его document, так как этот метод на document объекта, а не window)

Обновление: пример с вашим кодом:

<input type="checkbox" id="myChkBox" /> 
<input type="button" onclick="quickTotal(30, 'myChkBox');" value="Click me" /> 

<script type="text/javascript"> 
    var total = 0; 
    document.write("test"); 
    function quickTotal(price, id) { 
     alert(price); 
     alert(id); 
     var object = document.getElementById(id); 
     if (object.checked == 1) { 
      total = parseFloat(total) + parseFloat(price); 
      alert("add"); 
     } 
     if (object.checked == 0) { 
      total = parseFloat(total) - parseFloat(price); 
      alert("subtract"); 
     } 

     alert(total); 
     //document.floater.price.innerHTML("test") 
    } 
</script> 
+0

Я изменил ссылку на document.getElementById (id). и он все еще не работает. Нужно ли включать библиотеку какого-либо типа для getElementById? –

+0

@DavidBrilliant методы объекта документа являются родными для браузера, вам не нужно ничего делать, чтобы их получить. – jbabey

+0

Какая ошибка у вас? У вас есть элемент (вкладка флажка), чей идентификатор соответствует тому, что вы ищете? Я обновил свой ответ с вашим примером (исправлены ошибки кода и некоторые элементы HTML), который отлично работает. – carlosfigueira

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