1

< div> with < asp:ListView>- 検索結果があります。この div を非表示にして、ListView がいっぱいになったときに表示したい (または、コードのこの部分が完成したとき)

    lvSearchResult.DataSource = getSearchResult();
    lvSearchResult.DataBind();

これどうやってするの?一方、リストビューを使用したこの < div> が表示されない場合は、「読み込み中」という情報を含む別の div を表示したいと考えています。ListView の準備が整うと、結果の < div> が表示され、"loading" の < div> が非表示になります。

4

7 に答える 7

1

更新パネルを使用している場合は、以下のようなコードで達成できます。これにより、更新中にページ上にモーダル パネルが表示されます。

開始および終了リクエスト メソッドを変更して、リスト ビューを含む div を非表示/表示することもできます

これはjQueryを使用していることに注意してください。

    <div id="workingDialog" style="display: none" title="Please wait">
        <p>
           Loading Data
        </p>   
     </div>

<div id="listViewDiv" style="display:none">
//List View
</div>

<script>

var _workingDialog;


    //Page Load event
    function pageLoad(sender, args) {
        //Register events
        Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(beginRequest);
        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequest);

        _workingDialog = $('#workingDialog');
    }

    function beginRequest(sender, args) {
        $(_workingDialog).dialog({ modal: true });
        $('#listViewdiv').hide();
    }

    function endRequest(sender, args) {
        $(_workingDialog).dialog('close');
        $('#listViewdiv').show();
    }

</script>

http://wraithnath.blogspot.co.uk/2011/12/showing-modal-dialog-while-page-is.html

于 2012-07-18T08:29:13.410 に答える
1

次のように div を宣言します。

<div id="searchResultDiv" runat="server" visible="false">...</div>

<div id="loadingDiv" runat="server">...</div>

runat="server"、asp.net コード ビハインドでアクセスできるようにします。

次に、コードでプロパティを変更できます。この例では、次を変更しますVisibility

lvSearchResult.DataSource = getSearchResult();
lvSearchResult.DataBind();
searchResultDiv.Visible = true;
loadingDiv.Visible = false;
于 2012-07-18T08:25:49.557 に答える
0

runat="server"div で属性を使用する

次に、条件に応じて、divを表示または非表示にすることができます

<div runat="server" id="myDiv">


var result = getSearchResult();    

    if(result!= null){
        myDiv.Visible = true;
        lvSearchResult.DataSource = result;
        lvSearchResult.DataBind();
       }
于 2012-07-18T08:24:43.840 に答える
0

リストに応じて、2 つの css クラスを広告するメソッドを作成できます。1 つはリストがいっぱいの場合、もう 1 つはその他の場合です。したがって、1 つの css には display: none; があります。もう一方のディスプレイでは: inline-block;

于 2012-07-18T08:24:46.037 に答える
0

私の理解では、cssを使用できますか?display:none を設定し、条件が満たされたときにディスプレイをブロック/表示に変更しますか?

これが役立つことを願っています: http://webdesign.about.com/od/dhtml/a/aa101507.htm

于 2012-07-18T08:25:27.770 に答える
0

runat="server" を div に追加すると、visible = false/true を設定できます

于 2012-07-18T08:25:29.043 に答える
-1

UpdatePanel で AJAX を使用しますか? それは動作します..

于 2012-07-18T08:24:43.793 に答える