web-dev-qa-db-ja.com

チェックボックスがチェックされているかどうかどうすれば確認できますか?

私はjQuery Mobileを使用してモバイルWebアプリケーションを構築しています。チェックボックスがオンになっているかどうかをチェックしたいのです。これが私のコードです。

<script type=text/javascript>
  function validate(){
    if (remember.checked == 1){
      alert("checked") ;
    } else {
      alert("You didn't check it! Let me check it for you.")
    }
  }
</script>

<input id="remember" name="remember" type="checkbox" onclick="validate()" />

しかし、どういうわけかそれを実行しません。

助けてください !

----編集-----これは私が今のところ持っているものです。

<DIV data-role="content" data-theme="g">
    <DIV class=ui-grid-g-login>
        <FORM method=post action=[$=PROBE(266)/] data-theme="C">
            <P>~DATA_ERROR~</P>
            <div id="mail" data-role="fieldcontain">
                <label for="mail">Email:*</label>       
                <input id="mail" name="mail" type="email" />
            </div>
            <div id="pass" data-role="fieldcontain">
                <label for="pass">Paswoord:*</label>        
                <input id="pass" name="pass" type="password" />
            </div>
            <div id="remember" data-role="fieldcontain">
                <label for="remember">Onthoud mij</label>       
                <input id="remember" name="remember" type="checkbox" onclick="validate()" />
            </div>
            <P><INPUT class=btn name=submit value=Login type=submit  onclick="validate()"></P>  
        </FORM>
    </DIV>
</DIV><!-- /content -->

<script type=text/javascript>
function validate(){
    var remember = document.getElementById('remember');
    if (remember.checked){
        alert("checked") ;
    }else{
        alert("You didn't check it! Let me check it for you.")
    }
}
</script>

----編集 -

それを解決しました、問題はfieldcontainも '覚えている'という名前だったということでした

151
Steaphann

checkedbooleanプロパティであるため、IF条件で直接使用できます。 -

 <script type="text/javascript">
    function validate() {
        if (document.getElementById('remember').checked) {
            alert("checked");
        } else {
            alert("You didn't check it! Let me check it for you.");
        }
    }
    </script>
239
Pranav

これを試して:

function validate() {
  var remember = document.getElementById("remember");
  if (remember.checked) {
    alert("checked");
  } else {
    alert("You didn't check it! Let me check it for you.");
  }
}

あなたのスクリプトは変数rememberが何であるかを知りません。最初にgetElementById()を使って要素を取得する必要があります。

50
clem

これにより、id='remember'を持つ要素が'checked'であるかどうかを確認できます。

if (document.getElementById('remember').is(':checked')
12
Peter

このフォームをモバイルアプリに使用している場合は、必須属性html5を使用できます。これにはJavaスクリプト検証を使用したくありません。うまくいくはずです

<input id="remember" name="remember" type="checkbox" required="required" />
8
shenbaga kannan

こんな感じ

<script type=text/javascript>
function validate(){
if (document.getElementById('remember').checked){
          alert("checked") ;
}else{
alert("You didn't check it! Let me check it for you.")
}
}
</script>

<input id="remember" name="remember" type="checkbox" onclick="validate()" />
5
hkutluay
    if (document.getElementById('remember').checked) {
        alert("checked");
    }
    else {
        alert("You didn't check it! Let me check it for you.");
    }
3
Lakshmana Kumar

rememberは未定義です…そしてcheckedプロパティは数値ではなくブール値です。

function validate(){
    var remember = document.getElementById('remember');
    if (remember.checked){
        alert("checked") ;
    }else{
        alert("You didn't check it! Let me check it for you.")
    }
}
2
Quentin

私はこれを使っていて、それは Jquery で私のために働きます。

Jquery:

var checkbox = $('[name="remember"]');

if (checkbox.is(':checked'))
{
    console.log('The checkbox is checked');
}else
{
    console.log('The checkbox is not checked');
}

非常に単純ですが、仕事です。

よろしく!