2012-05-26 4 views
1

У меня есть флажок, который вызывает функцию JS, как так:OnClick с флажком

<input type="checkbox" onclick="return validate('tos')" value="1" name="tos"/> 

Но я имею проблемы с JS обнаружения, когда он Infact неотмеченным, кажется, всегда возвращает истину.

Это, как я есть мой сценарий:

function validate(type){ 

    var x = document.getElementById("reg"); //get array of elements in form "reg" 
    var input = x.elements[4].value; //[4] = checkbox 

    if(input){ 
     alert('ticked');  
    } else { 
     alert('not ticked');  
    } 
} 

Но он всегда возвращает тикали, даже если пользователь нажимает на нее, когда она была уже тикали (который я думал, что будет означать, что не было значение 1 больше) ... есть ли способ, который я могу исправить в JS?

+3

«значение» флажка всегда '1'. Попробуйте выполнить проверку с помощью .checked для проверяемого атрибута вместо 'value'. –

+0

@ FabrícioMatté ах ... спасибо за это :) Это сработало ...! – Sir

ответ

5

Эта единица техники больше не действительна 1, не включая ее checked государства.

Используйте свойство .checked, чтобы проверить состояние флажка.

+0

спасибо! :) будет указывать ответ, когда таймер позволяет мне! – Sir

+0

Нет проблем. :) Рад помочь. –

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