2012年5月31日木曜日

フォームパーツのdisabled設定

  • このエントリーをはてなブックマークに追加

フォームパーツ(inputとかselectなど)を見えるけれども、
触ってはいけない状態にしたいなぁと思って、メソッドを作ってみた。
関数だとなんか見づらいし。
ということでコードは↓。

$.fn.extend({
  disable:function(){
    return this.each(function(){
      this.setAttribute("disabled","disabled");
    });
  },
  able:function(){
    return this.each(function(){
      this.removeAttribute("disabled");
    });
  }
});

本来ならばネイティブコードで書くのではなく、
jQueryのattr("disabled","disabled")とかremoveAttr("disabled")みたいな感じで、
書こうと思ってたけどなぜかIE7で動かず。
ということでsetAttributeとremoveAttributeを使ってみた。

ちなみに使用例としては↓のような感じ。

$('[name="num_field"]').disable();
$('[name="num_field"]').able();

1 件のコメント:

  1. ブログでカンパを募集されているようなので、参考になればと思って書きました。
    不要なら削除してください。

    Kampa!以外にも似たようなサービスがあるようです。

    簡単カンパ 口座登録なしで簡単に寄付を受け取れる
    http://www.kkanpa.com/

    ユグドア | 世の中すべてのホームページにチップを送金できるサービス
    http://www.yggdore.com/

    FreeStarter | 手数料無料で審査無し放置のクラウドファウンディング!
    http://crazyworks.jp/freestarter/

    返信削除

Adsense