jqの
attr は属性の値を取得。
prop は属性の値を取得。
removeAttrは属性を削除する。
細かくいうと、
attrは属性の値を取得。変更もできる。
propは、プロパティの真偽を返す。true/false (有効か無効か)
propは有効無効の切り替えができるもので、attrはその値を取るものだと思います。
なので、htmlのdisabled属性などは、attrで書き換えではなくpropで切り替えをした方がいいのではないかと思います。
覚書なので、他人がみたらわけわかめだと思いますね。。。