<p>選択-コンテナ取得幅:0px</p>

作成日 2013年09月12日  ·  5コメント  ·  ソース: harvesthq/chosen

私はchoose(1.0.0)の最新バージョンを使用しており、choose-container内でwidth:0pxを取得しています。 関数this.container_width()が「0px」を返している理由がわかりません。 誰かが私を助けることができますか?

注:オンザフライで表示されるブートストラップモーダル内で使用しています
注2:失敗しないように、modal()を呼び出してからchosen()を呼び出す必要があります

最も参考になるコメント

私はまったく同じ問題に遭遇しました、そしてこれを解決したのは私が追加することでした
最小幅:220px!重要;
.chosen-containerCSSクラスへ:)

全てのコメント5件

私はまったく同じ問題に遭遇しました、そしてこれを解決したのは私が追加することでした
最小幅:220px!重要;
.chosen-containerCSSクラスへ:)

#1272と#1532の重複、#1439で考えられる解決策

この号を約1時間検索しました。 3.2への最新のアップデート以降に来るかどうかはわかりませんでした... choose.cssとwidth:220px!importantで修正しました

これは良い解決策ではありません。次のjoomlaアップデートで修正する必要があります...この問題はほぼ1年前のものです。

「chosen.jquery.js」のコードでは、次のようになります。

container_props = {
'クラス':container_classes.join( '')、
'style': "width:" +(this.container_width())+ ";"、
'タイトル':this.form_field.title
};

次に、単純に次のようにします。

$( "#idControl")。chosen({
幅:「250px」
});

これは少し古いと思いますが、次の関数を追加することで、わずかに優れたソリューション(1.7.0の場合)を考え出しました。

function defModalWidth(obj) {
  if (obj.container_width() == '0px') {
    return '600px';    
  } else {
    return obj.container_width();
  }
}

次のように呼び出すことで、 set_up_htmlthis.container_width()を置き換えます。

this.container.width(defModalWidth(this));

選択したものはすべてゼロである必要があります。これは、モーダルが非表示になっているため、代わりに600を取得するためです。

動作しているようです。

このページは役に立ちましたか?
0 / 5 - 0 評価