2012-03-05 15 views
0
<input type=checkbox id="chk1" name="chk" onclick="getchecked('chk1')"/> 
<input type=checkbox id="chk2" name="chk" onclick="getchecked('chk2')"/> 

getchecked(pId) 
{ 
    if(pId.checked==true) 
    alert('ok'); 
    else 
    alert('not ok'); 
} 

ランタイムで、チェックボックスをオンにした場合、そのチェックボックスのチェックされたプロパティは追加されません。チェックボックスのチェックされたプロパティを追加できません

だから、いつもブロックに入るのはなぜですか?

+0

DOMオブジェクト "chk1"が必要だが、代わりにJavascript文字列リテラル 'chk1'が渡されている可能性がありますか? – paulsm4

+1

あなたは質問がかなり不完全で、どこでその関数を呼び出そうとしていますか、他の関数やチェックボックスでクリックしたり、イベント自体を変更したりしていますか? –

答えて

1

はこのようにそれを試してみてください。

<input type=checkbox id="chk1" name="chk" onclick="getchecked(this)"/> 
<input type=checkbox id="chk2" name="chk" onclick="getchecked(this)"/> 

function getchecked(checkbox) 
{ 
    if(checkbox.checked) 
    alert('ok'); 
    else 
    alert('not ok'); 
} 

すなわち、 checkbox-objectをIDの代わりに関数に渡します。それ以外の場合は、checkbox.checkedを呼び出す前に、関数内でvar checkbox = getElementById(pId)を使用する必要があります。

また、functionキーワードが質問に表示されません(コピー/貼り付けエラーだと思います)。

関連する問題