0

シャドウボックス内のページを開いています。ただし、ユーザーがボタンをクリックすると、jQuery.ajaxを使用して、同じページの2番目のdivが別のページから読み込まれます。FF、chrome、safariで動作しますが、IE8では動作しません。

`function open_shadowbox_div_view(){

Shadowbox.open({
         content:  
                   $("#div1").html(),  
                   player:     "html",                                                    
                   height:     420,    
                   width:      750 ,
                  options:{
                       onFinish: function(){  

                       } ,
                          onClose: function(){  }

                   }



    });

}



function newOccFunction(contract){


    var site_url = "page.php?var=";?>"+var;

    jQuery("#div1").load(site_url,function(){open_shadowbox_div_view();});


}'     

これにより、最初のdivが開きます。次に、同じページにdivをロードするボタンがそのページにあります。phpボタンonclick関数'function filter(){

    var site_url = "page2.php";

    jQuery.ajax({
        type: "POST",
        url : site_url,

        success: function(data){
            alert(data);
            jQuery("#sb-player #div2").html(data);
            alert(jQuery("#sb-player #div2").html());//This returns null

        },
        failure: function(){
            alert("fail");
        }

    });
}'

どんな助けでもありがたいです。あなたより

4

1 に答える 1

0

divにロードしようとしているコンテンツはシャドウボックスの最初のページ内にあるため、#sb-playerを使用する必要はありませんが、ネストされているすべてのdivタグを使用する必要があります。IEにのみ影響するため、そのまま実行できます。

明確にするために、

 <div id="sb-player">
 <div id="main_box"><div id="second_box"></div></div>

次に、次のようにして「second_box」にコンテンツをロードできます。

 jQuery("#main_box #second_box").load(url);

これを理解するのに何時間も無駄にした人たちに役立つことを願っています。

于 2012-07-31T18:45:58.643 に答える