jQuery UI の Menu Widget による多階層メニュー全体の有効/無効を、ラジオボタンで切り替える方法。
実装例(サンプル)
実装例(サンプル)の動作について
「有効」ラジオボタンをクリックし、チェックすると、多階層メニュー全体を有効化する。
「無効」ラジオボタンをクリックし、チェックすると、多階層メニュー全体を無効化する。
実装例(サンプル)のソースコード
読み込み
パスは、それぞれ、アップロードした場所を指定する。
<link rel="stylesheet" href="jquery-ui.css">
<script type="text/javascript" src="jquery-1.9.1.js"></script>
<script type="text/javascript" src="ui/1.10.2/jquery-ui.js"></script>
<script type="text/javascript" src="jquery-1.9.1.js"></script>
<script type="text/javascript" src="ui/1.10.2/jquery-ui.js"></script>
JavaScript
<script>
jQuery( function() {
jQuery( '#jqueryUiButtonRadio' ) . buttonset();
jQuery( '#jqueryUiButtonRadio input[name^=jqueryUiButtonRadio]' ) . change( function () {
var checked = jQuery( '#jqueryUiButtonRadio1' ) . prop( 'checked' );
if ( checked ) {
jQuery( "#sampleMenu" ).menu( { disabled: false } );
} else {
jQuery( "#sampleMenu" ).menu( { disabled: true } );
}
} ).change();
} );
</script>
jQuery( function() {
jQuery( '#jqueryUiButtonRadio' ) . buttonset();
jQuery( '#jqueryUiButtonRadio input[name^=jqueryUiButtonRadio]' ) . change( function () {
var checked = jQuery( '#jqueryUiButtonRadio1' ) . prop( 'checked' );
if ( checked ) {
jQuery( "#sampleMenu" ).menu( { disabled: false } );
} else {
jQuery( "#sampleMenu" ).menu( { disabled: true } );
}
} ).change();
} );
</script>
CSS
<style>
<!--
.ui-menu {
width: 200px;
font-size: 12px;
}
#jqueryUiButtonRadio label {
font-size: 15px;
}
-->
</style>
<!--
.ui-menu {
width: 200px;
font-size: 12px;
}
#jqueryUiButtonRadio label {
font-size: 15px;
}
-->
</style>
HTML
<ul id="sampleMenu">
<li><a href="#">メニュー1</a></li>
<li><a href="#">メニュー2</a>
<ul id="sampleMenu">
<li><a href="#">メニュー2-1</a>
<ul id="sampleMenu">
<li><a href="#">メニュー2-1-1</a></li>
<li><a href="#">メニュー2-1-2</a></li>
<li><a href="#">メニュー2-1-3</a></li>
</ul>
</li>
<li><a href="#">メニュー2-2</a></li>
<li><a href="#">メニュー2-3</a></li>
</ul>
</li>
<li><a href="#">メニュー3</a></li>
<li><a href="#">メニュー4</a>
<ul id="sampleMenu">
<li><a href="#">メニュー4-1</a></li>
<li><a href="#">メニュー4-2</a></li>
<li><a href="#">メニュー4-3</a></li>
</ul>
</li>
<li><a href="#">メニュー5</a></li>
</ul>
<li><a href="#">メニュー1</a></li>
<li><a href="#">メニュー2</a>
<ul id="sampleMenu">
<li><a href="#">メニュー2-1</a>
<ul id="sampleMenu">
<li><a href="#">メニュー2-1-1</a></li>
<li><a href="#">メニュー2-1-2</a></li>
<li><a href="#">メニュー2-1-3</a></li>
</ul>
</li>
<li><a href="#">メニュー2-2</a></li>
<li><a href="#">メニュー2-3</a></li>
</ul>
</li>
<li><a href="#">メニュー3</a></li>
<li><a href="#">メニュー4</a>
<ul id="sampleMenu">
<li><a href="#">メニュー4-1</a></li>
<li><a href="#">メニュー4-2</a></li>
<li><a href="#">メニュー4-3</a></li>
</ul>
</li>
<li><a href="#">メニュー5</a></li>
</ul>