0

検索が完了するまで「検索中」のテキストを表示したいクリック時に検索ボタンがあります。したがって、この検索テキストの場合、ボタンをクリックするとテキスト検索を含むスパンがあり、コントロールがjson関数を終了するために実行されているように見えるため、スパンを表示できません

<span id="searchWait" style="display:none">&nbsp;Searching...</span>

<script>
function getPromptSearchResults() {
    $('#searchWait').toggle();

    $.ajax({
        async: false,
        url: 'Application.aspx/getPromptSearchResults',
        data: JSON.stringify({
            some parameters
        }),
        success: function (data) {
            $('#searchWait').html('done');
            something
        },
        error: function (parameters) {
            something
        }
    });

    return something;
}
</script>

興味深い事実は、行 $('#searchWait').toggle(); の後にアラートを出す場合です。テキスト検索とアラートが表示されますが、[OK] をクリックすると、関数が正常に完了するまでアラートが残ります。検索が完了すると、span の html が正しく変更されます。IE 8 でのこの奇妙な動作を理解できない

4

2 に答える 2

0

トグルはjqueryイベントに依存するため、スパンCSSを変更することを好みます

function getPromptSearchResults() {

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

    $.ajax({
        async: false,
        url: 'Application.aspx/getPromptSearchResults',
        data: JSON.stringify({            some parameters        }),
        success: function (data) {
$('#searchWait').html('done')
            something        },
        error: function (parameters) {
            something        }
    });

    return something;
}
于 2013-02-28T15:12:21.767 に答える
0

show()の代わりに試してくださいtoggle()

于 2013-02-28T15:00:22.690 に答える