iPhoneと関係ないネタです。

jQueryには(少なくともこの記事を書いている段階では)チェックボックスのchecked属性を調べたり操作したりする専用の方法はないようです。

強いて言えば下記ブログで紹介されているこれらの方法で取得できますが、あまり美しくありません。

var checked = $('#elem').get(0).checked;
var checked = $('#elem').is(':checked');
var checked = $('#elem').attr('checked');

参考: http://webtech-walker.com/archive/2010/04/06155654.html

そこで、ここではjQueryを拡張してchecked()メソッドを用意する方法を提案します。

jquery-extension.js
jQuery.fn.checked = function(isChecked)
{
var i, objects = jQuery(this).get();
if (typeof isChecked === 'undefined') {
for (i = 0; i < objects.length; i++)
if (objects[i].checked)
return true;
return false;
}
else
for (i = 0; i < objects.length; i++)
if (typeof objects[i].checked !== 'undefined')
objects[i].checked = isChecked;
}

使い方
var checked = $('#elem').checked();
var checked = $('input[name=radio]').checked();
// 複数の<input name='radio'>の内一つでもチェックされていればtrue
$('#elem1,#elem2,#elem3').checked(true);
// #elem1, #elem2, #elem3をすべてチェックする

2番目の例のように、複数の要素を持つjQueryオブジェクトに対してchecked()メソッドを呼び出すと、一つでもチェックされている場合にtrueを返す仕様にしています。($('input[name=radio]').is(':checked') と同じ)
ラジオボタンがチェックされているかどうかを判定するのに便利です。

また、3番目の例のように、引数にtrue/falseを指定することで、チェックボックスの操作を(一括で)行うことができます。