-2

postを使用して値を渡す際にDOMajaxをjqueryajaxにアップグレードします。問題は画像の読み込みです。ここでサンプルの一部を実行しようとしましたが、成功しませんでした。これが私のコードです:

function passLetter(str)
    {       
        $('#loadingImage').attr('style','display:');
        // $('#retail_group').html('<img src="/admin/images/ajax-loader.gif" style="text-align:center;">');
                    //$('#loadingImage').show();                                
        $.ajax({
        url: "getRetailGroup.php",
        type: "GET",
        async: false,
        data:  {"letter": str},
        success: function(data){
                $("#retail_group").html(data);
                //$('#loadingImage').hide();
            }
        });
        getletter = str;
    }

divの場合:

<div id="retail_group">
<div id="loadingImage" style = "display:none">
<img src="/admin/images/ajax-loader.gif" style="text-align:center;" alt = "Loader" title = "Loader">
</div>
</div>  
4

4 に答える 4

0

show()1つは、代わりにjqueryとhide()関数を使用する必要があります。

$('#loadingImage').show();

次に、ブラウザの画像パスに基づいて実際に画像にアクセスできることを確認します

http://site.com/admin/images/ajax-loader.gif

jqueryの表示/非表示を使用する場合は、削除する必要があります

style = "display:none">

$('#loadingImage').hide();ドキュメントの準備ができたブロックに入れます

ああ、jqueryでcssを要素に設定したい場合は、次のようにする必要があります

$('#loadingImage').css("display","block");

編集

あなたの本当の問題は、のhtmlをajaxの結果に置き換えていることです。 retail_group次に関数が呼び出されたときにそれを行うと、表示するloadingImagedivはなくなります

$("#retail_group").html(data);

次のように関数を変更する必要があります。

function passLetter(str)
    {       
     $('#retail_group').html('<img src="/admin/images/ajax-loader.gif"/>');                       
        $.ajax({
        url: "getRetailGroup.php",
        type: "GET",
        async: false,
        data:  {"letter": str},
        success: function(data){
                $("#retail_group").html(data);
            }
        });
        getletter = str;
    }

これで、関数が呼び出されるたびにretail_group、ajaxが正常に完了するまで内部が画像になります

于 2012-07-30T17:42:04.403 に答える
0

単に次のように変更する $('#loadingImage').css('display','block'); か、さらに単純にします。 $('#loadingImage').show();

于 2012-07-30T17:32:38.683 に答える
0

これを試して:

 $('#loadingImage').show();

また

 $('#loadingImage').css('display','block');     

あなたの#loadingImagediv にはすでに CSS があると思いますdisplay: none

于 2012-07-30T17:31:19.533 に答える
0

それ以外の:

$('#loadingImage').attr('style','display:');

試す:

$('#loadingImage').show();
于 2012-07-30T17:31:59.807 に答える