attrとprop
二つともよく似た挙動をする
返り値の概念が違うらしい
>
・attrは、属性における値 を取得
・propは、プロパティの真偽 を取得
例:チェックした値を取得
$(":checkbox").click(function() {
alert($(this).prop('checked'));
alert($(this).attr('checked'));
});
チェック時
attr → checked
prop → true
非チェック時
attr → undefined
prop → false
>1input関連の値を取得する場合はprop、と考えておくといいと思います。
また、inputのプロパティを取得する以外に、hrefを取得する際なども、propではURLの値をまるごと取得してくれたり、色々便利に使えます。