簡體   English   中英

在updatepanel部分回發后運行javascript

[英]run javascript after updatepanel partial postback

我在頁面標題中具有JavaScript函數,用於更改頁面中內容的可見性:

<script type="text/javascript">
// <![CDATA[
    function toggleVis(id1, id2, id3) {
        var element = document.getElementById(id1).style.visibility;
        if (element == 'hidden') {
            document.getElementById(id1).style.visibility = 'visible';
            document.getElementById(id2).style.visibility = 'visible';
            document.getElementById(id3).style.visibility = 'visible';
        }
        else {
            document.getElementById(id1).style.visibility = 'hidden';
            document.getElementById(id2).style.visibility = 'hidden';
            document.getElementById(id3).style.visibility = 'hidden';
        }
    }

// ]]>
</script>

當我在帶有單選按鈕的updatepanel中使用它時,它可以工作:

<dx:ASPxRadioButton ID="RB1" CssClass="btnInline" runat="server" Text="Yes">
<ClientSideEvents CheckedChanged="function(s, e) { toggleVis('Label33', 'textbox','Label34');}" />
</dx:ASPxRadioButton>
<dx:ASPxLabel ID="Label33" CssClass="btnInline" runat="server" Text="Label33" Style="visibility: hidden" />
<dx:ASPxTextBox ID="textbox" CssClass="btnInline" runat="server" Style="visibility:hidden" Width="40px" />
<dx:ASPxLabel ID="Label34" CssClass="btnInline" runat="server" Text="Label34" Style="visibility: hidden" />

問題是當我單擊清除表單的按鈕后,通過檢查單選按鈕,javascript無法正常工作。 我已經嘗試了一些互聯網上的東西,但是我做不到,對不起我的英語。

使用add_endRequest() 它將在部分回調中觸發。

<script type="text/javascript">
  Sys.WebForms.PageRequestManager.getInstance().add_endRequest(toggleVis);
</script>
  • .aspx頁中的上述代碼放入<head>標記中。 將工作 :)

Prog是正確的,當頁面部分回發時,將不會調用您的函數。 為了確保每次您都要調用它時都會調用它:window.onload = function(){toggleVis(id1,id2,id3); Sys.WebForms.PageRequestManager.getInstance()。add_endRequest(toggleVis);}; 函數toggleVis(id1,id2,id3){}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM