リストにあるdivをレンダリングした後、Anythingsliderをリロードしようとしています。
<h:selectOneMenu id="dropdownDevice"
value="#{skinningBean.currentDevice}" converter="SkinConverter">
<f:selectItems value="#{skinningBean.myDevicesSI}" var="c"
itemValue="#{c}" />
<a4j:ajax event="change" render="preview" oncomplete="reloadSlider()" />
</h:selectOneMenu>
注: プレビュー div は、slider1 リストの周りにあります
<script type="text/javascript">
function reloadSlider() {
var $jq = jQuery.noConflict();
$jq(function($){
$jq('#slider1').anythingSlider();
});
}
</script>
しかし、私はいつもこのエラーを受け取ります (私はこの解決策以上のものを試しました):
Error: TypeError: $jq(...).anythingSlider is not a function
この後、単純なリスト要素のみが表示されます。スライダーをリロードする方法はありますか?
編集:ドロップダウンメニューだけがレンダリング元のコンポーネントではないため、ページ全体をリロードしたくありません
これは私がanysliderを初期化する方法です:
<script src="../js/jquery.anythingslider.js"></script>
<link rel="stylesheet" href="../css/anythingslider.css" />
<script type="text/javascript">
var $jq = jQuery.noConflict();
$jq(function($){
$jq('#slider1').anythingSlider();
});
</script>
コピーして関数でラップしただけなので、もう一度呼び出すことができます。