2012-02-23 11 views
0

文書化の方法は、のようだ:jQuery UIの「プレースホルダ」設定をソート可能にする方法は?

$('#sortable').sortable('option', 'placeholder'); 

しかし、これは代わりに私が設定オプションで使用する文字列を、私にオブジェクトを返します。

この方法で他の設定オプションの値を取得できます。例:

$('#sortable').sortable('option', 'opacity'); 

上記のコードは、ソート可能な設定オプションで通知した正確な値を返します。

私には不具合があるようです。とにかく、私がplaceholderの値を「通常の」方法で取得できない場合、この情報を取得するための他の方法はありますか?

EDITは:ちょうど問題を実証するjsFiddleを追加 - http://jsfiddle.net/hyBfm/

+0

[それは私のために働く](http://jsfiddle.net/gHHsN/1/)。どのようなサンプルコードがありましたので、何が起きているのか試してみることができますか? –

+0

@ChristianVarga:はい、それを見てください - http://jsfiddle.net/hyBfm/ - 問題はイベントハンドラ内から発生するようです...見てみましょう。 –

+0

@ChristianVarga:私はあなたをフォークしました... http://jsfiddle.net/46Uvj/ :) –

答えて

0

を確かに、それはjQueryのUIのバグです。 https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.sortable.js#L657

placeholderオプションが_createPlaceholder funcionで、内部オブジェクトによって上書きmercylessです:

はここで正確な場所です。

したがって、$('#sortable').sortable('option', 'placeholder')より前にをプレースホルダ要素の作成に呼び出すと、構成オプションで通知した値(正しい動作)が返されます。しかし、の後に何か(したがってプレースホルダー要素が作成されている)をドラッグした後に同じ呼び出しを行うと、構成オプション文字列(予期しない誤った動作)の代わりにプレースホルダーオブジェクトが返されます。

私はhttp://bugs.jqueryui.com/ticket/8133にバグを記入しようとしましたが、Akismetがそれをスパムとして報告していたため説明をあまり変更しました...説明が読みにくくなりました。彼らがそれを認めて修正できることを願っています。

関連する問題