JQuery проблема с панелью обновления - PullRequest
1 голос
/ 25 мая 2011

Я создаю asp.net4 c # веб-приложение. У меня есть jquery на странице, использующей главную страницу, и мой заполнитель содержимого находится в скрипте панели обновления, не работающем, когда происходят возвраты назад*

страница содержания

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">
    <asp:View ID="View1" runat="server">
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
        <br />
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><script type="text/javascript">

                                                                    $('#<%= TextBox1.ClientID %>').timepicker({
                                                                        ampm: true,
                                                                        hourMin: 8,
                                                                        hourMax: 23
                                                                    });
        </script>
    </asp:View>
    <asp:View ID="View2" runat="server">      
        <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><script type="text/javascript">

                                                                    $('#<%= TextBox3.ClientID %>').timepicker({
                                                                        ampm: true,
                                                                        hourMin: 8,
                                                                        hourMax: 23
                                                                    });
        </script>
    </asp:View>

1 Ответ

1 голос
/ 25 мая 2011

Переместите UpdatePanel за пределы MasterPage.

Помещение всей страницы в UpdatePanel, что у вас есть, добавляет огромные накладные расходы - вся страница отправляется по проводам с каждой частичной обратной передачей. Эти накладные расходы снизят производительность.

UpdatePanel s должен переносить только релевантные и небольшие области страницы.

Как только UpdatePanel окажется на странице содержимого, вам необходимо убедиться, что вы снова добавили свой оператор JQuery в UpdatePanel. Это гарантирует, что скрипт JQuery не будет потерян при обратной передаче. Что-то вроде:

        <ContentTemplate>
            <script type="text/javascript" language="javascript">
                Sys.Application.add_load(YOUR_FUNCTION_NAME);
            </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...