私は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も '覚えている'という名前だったということでした
checked
はboolean
プロパティであるため、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>
これを試して:
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()を使って要素を取得する必要があります。
これにより、id='remember'
を持つ要素が'checked'
であるかどうかを確認できます。
if (document.getElementById('remember').is(':checked')
このフォームをモバイルアプリに使用している場合は、必須属性html5を使用できます。これにはJavaスクリプト検証を使用したくありません。うまくいくはずです
<input id="remember" name="remember" type="checkbox" required="required" />
こんな感じ
<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()" />
if (document.getElementById('remember').checked) {
alert("checked");
}
else {
alert("You didn't check it! Let me check it for you.");
}
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.")
}
}
私はこれを使っていて、それは Jquery で私のために働きます。
Jquery:
var checkbox = $('[name="remember"]');
if (checkbox.is(':checked'))
{
console.log('The checkbox is checked');
}else
{
console.log('The checkbox is not checked');
}
非常に単純ですが、仕事です。
よろしく!