jquery函数不起作用

时间:2013-08-28 04:35:27

标签: jquery asp.net

我在更新面板中放置了一个div中包含的转发器。并在页面中添加了一个jquery函数以对其添加一些效果。每个page_load事件都会调用jquery函数。它在测试页面上运行良好,但是当我在母版页中实现它我的jquery函数

时没有显示任何效果
<script type="text/javascript">
 function pageLoad(sender, args) {
            // JQuery code goes here
            function domReady() {
                $('#btn1').click(showMessage);
                $('#btn1').trigger('click');
            }
                  function showMessage() {
                 $('#message').fadeOut(10);

                $('#message').slideDown(1000);

            };

     $(domReady);
};
</script>}

和html是

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:Timer ID="Timer1" runat="server" Interval="5000" ontick="Timer1_Tick">
        </asp:Timer>
        <br />
        <div style="height:480px;overflow:scroll;">
        <asp:Repeater ID="Repeater1" runat="server">
       <ItemTemplate>

                    <div id="message" >
                   <img id="image" alt="visitors" runat="server" src="~/icon-visitors.png" height="32" width="32" /></td><td>
                      <b>A New visitor come from </b><b class="data"><%#Eval("lt_country") %></b> &nbsp;&nbsp;<%#Eval("pk_id") %> <br />
                   &nbsp; <b>Ip :- </b><%#Eval("lt_ip") %><b>/ Browser :-</b><%#Browser(Eval("lt_browser").ToString()) %><b>/ 
                   Operating System :</b><%#Os(Eval("lt_browser").ToString()) %><br /><br />
                    </div>
               </ItemTemplate>
        </asp:Repeater>
       <button id="btn1" style="visibility:hidden;"></button>
       </div>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
    </Triggers>
</asp:UpdatePanel>

1 个答案:

答案 0 :(得分:0)

在转发器中,不使用id到按钮和div,而是使用class。因为id应该是唯一的。如果你给id,它将无法工作。

您的脚本和HTML应更改如下

<script type="text/javascript">
 function pageLoad(sender, args) {
            // JQuery code goes here
            function domReady() {
                $('#btn1').click(showMessage);
                $('#btn1').trigger('click');
            }
                  function showMessage() {
                 $('.message').fadeOut(10);

                $('.message').slideDown(1000);

            };

     $(domReady);
};
</script>

<asp:Repeater ID="Repeater1" runat="server">
       <ItemTemplate>

                    <div class="message" >
                   <img id="image" alt="visitors" runat="server" src="~/icon-visitors.png" height="32" width="32" /></td><td>
                      <b>A New visitor come from </b><b class="data"><%#Eval("lt_country") %></b> &nbsp;&nbsp;<%#Eval("pk_id") %> <br />
                   &nbsp; <b>Ip :- </b><%#Eval("lt_ip") %><b>/ Browser :-</b><%#Browser(Eval("lt_browser").ToString()) %><b>/ 
                   Operating System :</b><%#Os(Eval("lt_browser").ToString()) %><br /><br />
                    </div>
               </ItemTemplate>
        </asp:Repeater>
       <button id="btn1" style="visibility:hidden;"></button>