2009-04-27 11 views
1

入れ子のモーダルのサポートが必要なので、jqModalの使用を開始したばかりです。私はネストされたモーダルとajaxでいくつかの不安定な動作に気付いていますが、修正する方法は正確にはわかりません。 2つのjqmOverlay divを取得すると、ネストされたモーダルがまだトリガされていないにもかかわらず、両方のモーダルにオーバーレイが適用されているようなものになります。モダルを閉じると、表示されるオーバーレイはまだ1つあります。ここでは、コードです:jquery jqModal Ajaxとネストされたモーダルの問題

// Main Modal 
$(function(){ 
$("#modal").jqm({ajax:'@href'}); 
}) 
<a class="label jqModal" href="/suppliers/2/edit">View Supplier</a> 


// Nested Modal code fragment within the /suppliers/2/edit html 
$(function(){ 
$("#nested_modal").jqm({ajax:'@href', zIndex:3001}); 
}) 
<a class="button jqModal" href="/suppliers/6/bills/new">Add Bill</a> 

は、最初に動作しているようですが、私はメインのモーダルを閉じた場合、その後、私は二重のオーバーレイの問題を取得し、再び開きます。これはバグですか?私のネストされたモーダルと呼んでいますか?また、ネストされたモーダルとjqmコールを削除すると、メインモーダルは毎回うまく動作するため、ネストされたモーダルと関係があることがわかります。

+0

ネストされたモーダルを正しく閉じることはできませんか?カスタムの「閉じる」機能を使用していますか? jqmOverlay divは、閉じるたびにDOM内で破棄する必要があります。 – montrealist

+0

標準を使用していますCancel brad

+0

とにかく、なぜ2つのオーバーレイが作成されたのかを知ることがより重要になると思います。私はそれらの両方が火かき棒で追加されているのを見ることができます。また、2つのオーバーレイは不透明度が50%なので、オーバーレイの色合いは実際には – brad

答えて

4

私の入れ子になったAJAX jqModalsにも同様の問題がありました。ここに解決策があります:toトップパラメータ、z-インデックスと組み合わせて、

はあなたのネストされたモーダルの高Zインデックスを設定し、JQMを作成するときにtrueにtoTopを設定します。たとえば:

// Nested: 
<div id="test" style="z-index: 5000;">Test content</div> 
... 
<script type="text/javascript"> 
$.ready(function(){ 
    $('#test').jqm({ 
    toTop:     true, 
    modal:     true, 
    overlay:    10, 
    }); 
}); 
</script> 

ZインデックスtoTopパラメータをいじりあなたの問題を解決するために役立つはずです。

+0

Thxのレスポンスになります。私はうまくいけばこれですぐに遊ぶチャンスを得て、それを受け入れることができます。 – brad

+0

魅力的なように働いていましたが、私は両方のモーダルを閉じたときに問題が発生しているようですが、最初のモーダルリンクが2回開きます。私は一度それを使って遊んだら、新しい質問を追加します。受け入れが遅れて申し訳ありません – brad

+0

これは、元のモーダルトリガーと同じトリガーを使用していたためです。トリガを追加する:jqmの初期化に '.jqNestedModal'を追加し、すべての私のajaxリンクにクラス.jqNestedModalリンクを追加すると問題が解決されました。再びThx! – brad