0

私のアプリケーションでは、ユーザーがスピナーに特定の値を入力したら、ビューのコンテンツを変更する必要があります。このプロセスの一環として、スピナーを破棄して削除する必要があります。

問題は、スピナーがループに入り、その値を無限にインクリメントすることです。サンプルコード:

spinner = $( "#spinner" ).spinner({
    change: function( event, ui ) {
        console.log('change');
    },
    spin: function( event, ui ) { 
            console.log( 'spin event, value = ', ui.value );
        if ( ui.value == 3 ) {
            spinner.spinner( "destroy" );
        }
    }
});

次のサンプルを確認してください: http://jsfiddle.net/XseWc/312/

値を 3 回増加: クリック、クリック、クリック

これはどのように達成できますか?

更新: ここでは 2 つのオプションを利用できます。

  1. スピンの代わりに停止イベントを使用するには。
  2. スピナーを破壊する前にマウスアップイベントをトリガーします。マウスを離すと、スピナーはハンドラーを削除し、破壊は正しく機能します。
4

3 に答える 3

0

代わりにこれを試してください(hide()とremove()の両方がうまくいきました)

spinner = $( "#spinner" ).spinner({
    change: function( event, ui ) {
        console.log('change');
    },
    spin: function( event, ui ) {  
        if ( ui.value == 3 ) {
            spinner.hide();
        }
    }
});
于 2013-08-12T15:15:16.773 に答える
0

これはあなたが探しているものを達成しますか?

spinner = $( "#spinner" ).spinner({
    change: function( event, ui ) {
        console.log('change');
    },
    spin: function( event, ui ) {  
        if ( ui.value == 3 ) {
            spinner.remove();
        }
    }
});
于 2013-08-12T15:15:25.143 に答える