ソフトウェア開発者の日常

こだわりなく書きたいことを書いていきます。

チェックボックスがOFFでも値を送信する方法

チェックボックスの困ったところ

tableの中の1列にチェックボックスがあり、保存処理で行ごとのチェックあり/なしの値をPOSTしたいが、チェックなしだと値がPOSTされず、どの行の値が POST されたのか分からずに困った。

対処方法

調べたところ、

<input type="hidden" name="check[0]" value="0">

<input type="checkbox" name="check[0]"  value="1">

のようにして、チェックありではチェックボックス側の値が POST され、チェックなしではhiddenの値が POST されるという内容だった。

早速試してみたら、全ての行のチェックボックスが、どちらかの値をPOSTしていた。

 

Ajaxで保存するようにすればこのような対処をしなくてもいいが、データ量が多いと処理に時間がかかるので、この方法を使ってPOSTして処理するのがベターだと考えた。