submitボタンの連続押し・同時押し防止

2012-10-07

ボタンの連続押しにより、エラーが発生することがあるので、管理画面や問い合わせフォームでは常時使っておいた方がよさそうな必須コードです。submitしたらページ内全てのsubmitをグレイアウトにして無効状態にします。 htmlStart $(function(){ $('form').submit(function(){ $('form').find(':submit').attr('disabled','disabled'); }); }); htmlEnd 使用する場合はjQueryの読み込みを忘れずに!...続きを見る

Javascriptで数値の先頭のゼロを削除する方法と、数字の先頭にゼロつける方法

2012-10-07

例えば「01」や「02」など、先頭にゼロがついている数値を「1」という数値に直す場合は、Number関数を使用します。 (adsbygoogle = window.adsbygoogle || []).push({}); htmlStart var str = "05"; var num = Number(str); //結果 num == 5 htmlEnd 逆に決まった桁数で先頭にゼロをつけなければいけないケース(ゼロパディング)もよく出くわします。その場合は下記の方法がおそらく最短コード。 htmlStart var num = 5; var str ...続きを見る

カテゴリ: Javascript

要素が空の場合はそのタグを削除する

2012-09-21

管理画面で入力がされていない空の項目がある場合、表のページで内容が空だったら非表示にしたいケースがちょくちょくあります。PHPで全ての項目に分岐文を加えるのは面倒だなと思い、他の方法を考えるてみると…。なんと、jqueryを使えば一行で実現できてしまいました。 htmlStart //リストの場合 $("ul#detail li:empty").remove(); //テーブルの場合 $("table#detail td:empty").parent('tr').remove(); htmlEnd このコードでのポイントはemptyでの空要素チェックとparentで親要素の指...続きを見る

カテゴリ: Javascript

6行程でアコーディオンメニューを導入

2012-09-08

jQueryを使用してたった6行程でアコーディオンメニューを完成させているコードがあったのでご紹介。 htmlStart $(function(){ $("dd:not(:first-child)").css("display","none") $("dl dt").click(function(){ if($("+dd",this).css("display")=="none"){ $(this).siblings("dd").slideUp("slow"); $("+dd",this).slideDown("slow"); } }); })...続きを見る

カテゴリ: Javascript

ページを開いたらすぐに指定のページ内リンクにスクロールさせる

2012-08-08

ページを開いた直後に指定のページ内リンクまでスムーズにスクロールさせるという技。jqueryを使用しています。下記のコードは#sampleの部分まで移動させるという場合のものです。任意で変更してください。 htmlStart $(function() { var p = $("#sample").offset().top; $('html,body').animate({ scrollTop: p }, 'slow'); return false; }); htmlEnd ※var p = ~~とありますが、このpはHTMLタグのpとは関係ありません。ただの変数名...続きを見る

thickboxでダイアログを表示する

2012-08-08

Jqueryのプラグインであるthickboxを使ってダイアログを表示してみよう。まずはheadタグ内でjqueryを読み込んだ後にthickbox.jsを読み込む。順番が逆だと動きません。 htmlStart htmlEnd あとはテキストリンクにclass指定でthickboxを宣言し、リンクを貼るだけで設置完了です。リンクのパラメータにはheightとwidthを必ず指定しなければいけません。リンク先はHTMLや画像、PHPでさらに独自のパラーメーターを付け足すことも可能です。 <テキストリンク~ダイアログ表示> htmlStart サンプル htm...続きを見る

カテゴリ: Javascript

この記事がお役に立てましたら是非シェアのご協力お願いします。