[javascript] jQueryを使ったのモーダルライブラリthickbox
これ、めちゃ簡単にモーダルポップアップが出せる。
まずはjsとcssを読み込む。
<script src="/thickboxjs" type="text/javascript"></script> <link href="/thickbox.css" media="all" rel="stylesheet" type="text/css" />
で、モーダルで表示したいlinkタグにthickboxってクラスを割り当てる
<a href="/xxxxx?height=100&width=200" class="thickbox">くりっく</a>
注意点としては、サイズ指定
?height=100&width=200
の部分が無いとうまく動かない。
後ろに、勝手に&random=xxxxxxxxxxってパラメータ付加されちゃうので。
[ruby][rails] Ajaxおさらいとactionの書き方
AjaxなLinkを作るときは、link_to_remote
link_to_remote 'text', :update => :target_id, :url => url
こんな事さえ忘れるなんて。。やっぱ使ってないとダメだね。
ボタンの場合は
submit_to_remote 'tag_name', 'text', :update => :target_id, :url => url
こんな感じ。
controller側では
request.xhr?
でAjaxリクエストか否か判断できるんで、
例えば、入力フォームをajaxで出して、登録ボタンを押すと入力した内容で登録しにいく。
みたいな感じの処理だったら、
def new return render :partial => :form end def create foo = Foo.new(params[:form]).save! redirect_to :action => show, :id => foo.id end
こーやって書くよりも、
def new return render :partial => :form if request.xhr? foo = Foo.new(params[:form]).save! redirect_to :action => show, :id => foo.id end
こんな感じで書くと見やすいと思う。
[html][css] tableタグを使わないテーブルレイアウト
まずリストを作る。
<ul> <li> <div>名前</div> <div>ニックネーム</div> </li> <li> <div>宮代大輔</div> <div>ぷりんす</div> </li> <li> <div>太郎</div> <div>元首相</div> </li> </ul>
こんなんになる。
名前ニックネーム
宮代大輔ぷりんす
太郎元首相
ulタグにclassを定義してスタイルを当てる
html
<ul class="table"> .... </ul>
.table{list-style:none;mergin:0;padding:0;} .table li{clear:both;} .table li div{display:block;float:left;}
こんなんになる。
名前ニックネーム
宮代大輔ぷりんす
太郎元首相
各divにclassを定義して幅を決め、borderで線を入れる。
html
... <div class="col1 head">名前</div> <div class="col2 head">ニックネーム</div> ... <div class="col1">宮代大輔</div> <div class="col2">ぷりんす</div> ...
// 幅 .col1{width:100px;} .col2{width:200px;} // 線 .table li div{border-right:1px solid #000;border-bottom:1px solid #000;} .head{border-top:1px solid #000;} .col1{border-left:1px solid #000;}
こんなんになる。
名前ニックネーム
宮代大輔ぷりんす
太郎元首相
[javascript][jquery] DOM要素の取り方
- タグ名指定
$('tag_name')
- ID指定
$('#ID')
- class指定
$('.class')
で、呼び出すfunctionは取得された要素全てに対して実行される。
便利だなコレ。
[ruby] 環境構築メモ
rvmインストール→rubyインストール→gemset作成→railsとかインストール
ってするんだけど、
/usr/bin/env
が無いって怒られた。
$ sudo apt-get install coreutils
これでenvが作られる。
あと、sudoしてないのに
~/.rvm じゃなくて /usr/local/rvm にインストールしにいこうとして権限が無いって怒られた。
こっちは、rootでrvmインストール→アンインストール で治ったみたい。
user$ sudo su -
>>[password]
root$ bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)
root$ rvm implode
root$ exit
user$ bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)
こんな感じ。