У меня есть простой фрагмент javascript, встроенный в мою HTML-форму, а не отдельный файл, который должен отключать кнопку отправки формы до тех пор, пока не будет установлен определенный флажок, но, похоже, он не работает.
<script>
var disclaimer = document.getElementById("disclaimer");
var submitButton = document.getElementById("submit");
submitButton.disabled = true;
if (disclaimer.checked) {
submitButton.disabled = false;
}
</script>
, который я написал и кажется простым и эффективным, но я не получаю результаты, которые я ищу. После исследования я вижу такие результаты, как
$('#check').click(function(){
if($(this).attr('checked') == false){
$('#btncheck').attr("disabled","disabled");
}
else
$('#btncheck').removeAttr('disabled');
});
Теперь, очевидно, имена переменных и тому подобное называются по-разному, но это даже не выглядит отдаленно похожим на код javascript, который я предоставил выше, и мне трудно получить полезные советы из очевидно работающего кода ниже, который делает тоже самое. Может ли кто-нибудь разбить фрагмент кода ниже, чтобы я мог исправить код выше?
Это фрагмент кода с двумя указанными HTML-идентификаторами,
<label style='font-size: smaller;'>
<input type='checkbox' name='disclaimer' id='disclaimer' required='required' />
I understand that by submitting this form,
I am transferring any copyright and intellectual property rights to the form's owner,
that I have the right to do so,
and that my submission is not infringing on other people's rights.
</label><br/>
<script>
var disclaimer = document.getElementById("disclaimer");
var submitButton = document.getElementById("submit");
submitButton.disabled = true;
if (disclaimer.checked) {
submitButton.disabled = false;
}
</script>
<div class='vspace'/>
<input type='submit' id='submit' name='came-from-form'/>
Редактировать: Тонны замечательных ответов ниже, которые были очень информативны для того, чтобы дать мне знать, с чем я работаю. Проблема, с которой я сейчас сталкиваюсь, заключается в реализации этих вещей. В приведенных ниже фрагментах это кажется очень простым для реализации, но, поскольку я пытаюсь реализовать каждый ответ ниже, я не вижу никаких результатов, что явно означает, что я делаю что-то не так где-то еще в своей форме. Я приложил большой фрагмент кода, о котором идет речь, если это поможет. В противном случае лучше задать новый вопрос.