Вопрос по javascript, validation, html – Включить / отключить кнопку отправки, если флажок установлен / снят?

13

Как включить кнопку отправки в моей HTML-форме и отключить, если флажок не установлен?

Что не так с этим кодом?

EnableSubmit = function(val)
{
    var sbmt = document.getElementById("Accept");

    if (val.checked == true)
    {
        sbmt.disabled = false;
    }
    else
    {
        sbmt.disabled = true;
    }
}                       

Флажок

<td width="30%">Do you accept Terms of Service agreement?</td>
<td width="10px" style="min-width: 10px"></td>
<td width="70%">
    <input type="checkbox" name="TOS" value="Accept" onClick="EnableSubmit"> I agree to Terms of Service agreement.
</td>
возможный дубликатHow do i disable a submit button when checkbox is uncheck? Ciro Santilli 新疆改造中心 六四事件 法轮功

Ваш Ответ

3   ответа
14

<td width="30%">Do you accept Terms of Service agreement?</td>
<td width="10px" style="min-width: 10px"></td>
<td width="70%">
    <input type="checkbox" name="TOS" value="Accept" onClick="EnableSubmit(this)"> I agree to Terms of Service agreement.
</td>

Причина, по которой он не работает: вы ничего не передаете своей функции. На самом деле, поскольку вы не использовали круглые скобки с именем функции, вы вообще не вызывали функцию. Проходя этоthis в контекстеonclick Атрибут события HTML означает, что вы передаете ссылку на объект DOM элемента, предоставляя вам доступ к его объекту.checked имущество.

Не могли бы вы еще раз ввести свой вопрос, чтобы включить остальную часть источника для формы (HTML)? И любой другой JavaScript, который вы могли бы использовать?
3

onClick="EnableSubmit()"

 <input type="checkbox" name="TOS" value="Accept" onClick="EnableSubmit()"> I agree to Terms of Service agreement.
0

Сначала, если условие проверяет, переключен ли тумблер на нужную сторону. Состояние может быть изменено в соответствии с требованием. Последнее jquery - сделать тумблер серым.

 if(!$('#togglehk').is(":checked"))
                    {
                        $('#togglehk').click();
                    }
  jQuery('#togglehk').attr("disabled", true);
  jQuery('#togglehk').prop("disabled",true);

  jQuery('#togglehk').next(".slider").css("backgroundcolor","#B3B3B3");

Похожие вопросы