2012-03-04 31 views
0

jsとjqueryを初めて使用しています。現在、私はform.phpにチェックボックスを含むフォームを持っています。ユーザーがサブミットをクリックすると、フォーム変数はform.jsファイルに送信され、各値はNULLであるかどうかがチェックされます。チェックボックスがチェックされていることを確認します。

form.jsファイルは完全に機能しますが、チェックボックスの場合は何も起こらないようです。私はこれが変数を宣言した方法によるものだと感じています。

次は、JSファイルのコードです:

var email = $('#email').val(); 
var website = $('#website').val(); 
var CHECKBOX = $('CHECKBOX').val(); 
... 
... 
if (CHECKBOX.checked == FALSE){ 
    var error = true; 
    $('#notchecked_error').fadeIn(500); 
}else{ 
    $('#notchecked_error').fadeOut(500); 
} 
+1

実際のコードで 'FALSE'は大文字になっていますか?それはおそらくそうではありませんが、私は好奇心が強いです...そうでなければ、アイデアがあります。 – nmagerko

+1

'CHECKBOX'は正しいセレクタではありません。正しい場合でも '$( 'CHECKBOX')を使う必要があります。is( ':checked');'。 –

+0

[jQueryでチェックボックスがオンになっているかどうかを確認するにはどうすればよいですか?](http://stackoverflow.com/questions/901712/how-do-i-check-if-a-checkbox-is-checked-in -jquery) –

答えて

0

使用してみてください:

if ($('#CHECKBOX').prop("checked")) 

か:また

if ($('#CHECKBOX').is(":checked")) 

、チェックボックスのためのあなたのセレクタがあることを確認してください正しい。

0
$('input[type=checkbox]:checked') // If you have multiple checkboxes you can use this and loop through them to get additional info 
$('#checkboxID:checked').length // To get one specific checkbox 
+1

'.length'を忘れないでください。 –

+0

ありがとうございます。 – user1247486

0

コードに2つの問題があります。最初の1つは、あなたのCHECKBOX割り当てのセレクターが故障していることです。これは、第二の問題は、あなたがのval()関数からCHECKBOX.checkedを読んでいる、あなたは、チェックボックス自体からそれを読むために必要があるということです

または

var CHECKBOX = $('input[type=checkbox]').val(); 

でなければなりません。

if(CHECKBOX.checked) 
+0

'.val()'は値を返します。 – RobG

0
`$('CHECKBOX').val();` 

CHECKBOXのタグ名を持つ要素を見つけると、それは価値の戻りしようとします。おそらくあなたはCHECKBOXのIDでチェックボックスを参照したい:

var CHECKBOX = $('#CHECKBOX'); 

それが確認されていますかどうかを確認するには、次の

if (!CHECKBOX[0].checked) { 
    // CHECKBOX is not checked 
} 

あなたが本当にjQueryのを使用する前に、基本的なJavaScriptを学ぶ必要があります。通常、フォーム提出から検証が開始されます。これにより、フォームへの参照が得られます。フォームのすべての要素をフォームのプロパティとして参照できます。これらのjQueryオブジェクトをすべて作成する必要はありません。例えばあなたの検証機能で次に

<form ... onsubmit="validate(this)"... > 
    <input type="checkbox" name="checkbox"> 
</form> 

:あなたが形成している場合のようなものである

function validate(form) { 
    if (!form.checkbox.checked) { 
    // the checkbox isn't checked 
    } 
} 

ご希望の場合は、動的にリスナーを添付することができます。

関連する問題