2011-06-20 11 views
0

私は本当に混乱しています。私は、フォームに次のHTMLを持っている:チェックボックスが間違った状態を返すのはなぜですか?

<input class="check-box" 
    id="Data__Correct" 
    name="Data.Correct" 
    type="checkbox" value="Data.Correct" /> 

これは私が見る私は、チェックボックスにチェックを入れると、フォームを送信Webページ上で、次の

<input class="check-box" 
     id="Data__Correct" 
     name="Data.Correct" 
     type="checkbox" value="False" /> 

を作成し、fiddlerに確認してくださいそれは送信しています:

Data.Correct False 

私はそれが逆だと思った。何が起こっていますか?

+0

@BarcinoチェックボックスにFiddlerに表示される 'checked'属性を持つ必要がありませんし、サーバーに送り返しますか? –

+0

あなたは何を求めていますか?あなたの質問を適切に形にしてください。 – diEcho

+0

上記は私のページのhtmlです。私のページがブラウザに表示されたら、チェックボックスをオンにしてからsubmitをクリックします。私がファイトラーをチェックすると、サーバーに返送される値がData.Correct = Falseであることがわかります – Barcino

答えて

3

どのようにチェックボックスが機能するのか誤解しています。チェックボックスがオフの場合、値はバックエンドに渡されません。チェックボックスがオンの場合、value属性の値がバックエンドに渡されます。あなたの場合、値Falseに設定すると、文字列Falseとブール値falseを混同しないようにします。

value='False'であなたの目的は、負荷にチェックボックスの状態を設定し、その後あなたの代わりにこれを実行する必要があるのであれば:

<input type="checkbox" ... checked/> 

それともchecked="checked"も、私は信じて動作するはずです。チェックされている場合はチェックされ、チェックされていない場合はチェックされます。

+0

大変ありがとうございます!私はそれを解決しようと狂って行っていた! – Barcino

関連する問題