【HTML/jQuery UI】NumericUpDownを設置する【Spinner】

公開日: : 最終更新日:2014/08/28 JavaScript/jQuery, サイト制作

スポンサーリンク

HTMLタグにNumericUpDownがないか探したのですがないみたいなのでそれが使えるようなものを探したところ一番良さそうなのがjQueryUIの「Spinner」でしたので試しに使ってみました。

設置する

jQueryUIの設定自体は省略します。Spinnerの設置自体はinputタグを用意してそのDOM(jQueryオブジェクト)のspinnerメソッドを呼ぶだけです。

JS側

$(function(){
	var spinner = $( "#spinner" ).spinner();
});

HTML側

<input id="spinner">

最大値・最小値・初期値の設定

このままではどんな値でも設定できてしまうので最大と最小値を設定します。ついでに初期値も設定します。

$(function(){
	var spinner = $( "#spinner" ).spinner(
	{
		max:31,
		min:1		
	});
	$( "#spinner" ).spinner( "value" , 31 );	
});

最大値・最小値はプロパティで設定することができます。「max」、「min」プロパティでそれぞれ最大と最小を設定し、オプション設定で「value」値に指定の初期値、この場合では31、を入れています。

他のプロパティにはクリックごとの上がり幅、下がり幅を決める「step」などがあります。詳細は本家ページのこちらをご覧ください。

値の取得

値はオプションの「value」値から取得できます。

var val = $( "#spinner" ).spinner( "value" );

イベント

イベントには上下ボタンのクリックにより値が変更されたときに呼ばれる「spin」イベントや外的要因から値が変更されたときに呼ばれる「change」イベント、初期化の際に呼ばれる「create」イベントなどがあります。(spinはchangeが呼ばれる状況では呼ばれない模様。その逆もその様子。)

例)

$(function(){
	var spinner = $( "#spinner" ).spinner(
	{
		max:31,
		min:1,
		change: function( event, ui ) {
			/*省略*/
		},
		spin: function( event, ui ) {
			/*省略*/
		},
		create: function( event, ui ) {
			/*省略*/
		}
	});
});

※ちなみに引数の「ui」で値を取得できるのは「spin」のみで「ui.value」で取得可能です。その他の場合は上記で述べたオプションの「value」の値から行ってください。

サイズの変更

CSSでSpinnerのサイズを変更します。

#spinner{
  width: 26px;
  height: 16px;
  font-size: 14px;
  line-height: 16px;
}

デモ



値⇒
change⇒
spin⇒

CSSも上記のものを指定しています。

ソース

JS側

$(function(){
	var spinner = $( "#spinner" ).spinner(
	{
		max:31,
		min:1,
		change: function( event, ui ) {
			$( "#change" ).html( $("#spinner").spinner( "value" ) );
		},
		spin: function( event, ui ) {
			$( "#spin" ).html( ui.value );
		},
		create: function( event, ui ) {
			$( "#spinner" ).spinner( "value" , 31 );
		}
	});
	
	//クリックイベントで値を取得
	$("#btn").click(function(){
		var val = $( "#spinner" ).spinner( "value" );
		$( "#spinnerdst" ).html( val );
	});	
});

HTML側

<input id="spinner">
<button id="btn">値取得</button>
値⇒<span id="spinnerdst"></span>
change⇒<span id="change"></span>
spin⇒<span id="spin"></span>

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

関連記事

さくらとロリポップのcronについての比較

私は今さくらのレンタルサーバーとロリポップのレンタルサーバーを両方試してみているのですがそのcron

記事を読む

スクレイピングをサポートしてくれるAPI【kimono】

kimonoというスクレイピングをAPI化してくれるという素晴らしいサービスがあります。

記事を読む

人気記事・ランダム記事等紹介の忍者レコメンドが大幅にパワーアップした件

以前このブログにて忍者レコメンドの紹介記事を書きました。その際にこのブログにも忍者レコメンドを設置し

記事を読む

【Three.js/jThree.js】カメラ内部パラメータを変更して視野などを変える

jThree.jsでカメラの内部パラメータを変更するのに手間取ったのでメモ。参考にしているjThre

記事を読む

関連記事を表示させるブログパーツOutbrainの導入方法

関連記事を表示させるブログパーツOutbrainの紹介です。 このOutbrainの長所は

記事を読む

ニコニコ動画の検索APIについて調べたのでメモ

ニコニコ動画にはAPIがあり、動画の情報(タイトルとか再生数とか)を取得したり、ランキング情報(RS

記事を読む

【javascript/jQuery】Progressbarで処理の進捗状況を表示する

jQuery UIでProgressbarを使う 処理経過を表示する場合プログレスバーにより提示さ

記事を読む

【HTML/CSS】タイトルロゴ画像の設定の方法

自分のブログやサイトのタイトル部分にトップ絵画像を設置する方法です。方法としてはimgタグをHTML

記事を読む

関連記事を表示させるブログパーツLinkWithinの導入方法

LinkWithinについて ブログに関連記事を表示するパーツ『LinkWithin』を紹介します

記事を読む

Pocketのソーシャルボタンをブログ・サイトに設置する方法

後で読みたい記事を保存することのできるPocketのソーシャルボタンの設置方法についてです。このボタ

記事を読む

UWSCを使ったソフト自動立ち上げ【SoftEther VPN Server】

やりたいこと 最近SoftEtherという筑波大学発のベンチャー企業

【PHP】headerでContent-Typeを指定したのに効かない場合の対処法

PHPでサイトマップを作ろうと思い、XML形式のファイルを出力しようと

スマホ向け幅固定サイトの回転時の幅対応方法

幅固定サイトでのスマホ回転時Webサイトの横幅を合わせる方法のメモ。

【PHP】特定のURLからそのAtomやRSSのフィードを抽出する方法

特定のURLからRSSやATOMのフィードを抽出する方法をメモ。 流

フィード抽出ツール(RSS1.0、RSS2.0、atom)

任意URL サイト名 サイトURL RSS1.0

格安プラン限定レンタルサーバー機能比較表(2016年)

はじめに  最近新しい共用サーバーをレンタルしようと思い調査およびそ

kindle unlimitedが便利だったのでお勧めの使い方など感想メモ

 kindle unlimitedというサービスが8/3からAmazo

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑