【问题标题】:error updating inside js (tabbed panel) [closed]js内部更新错误(选项卡式面板)[关闭]
【发布时间】:2012-02-13 11:08:58
【问题描述】:

当我单击链接按钮时,它不显示来自 DB 的数据...如果我从 DB 更新的部分在选项卡式面板之外,那么它工作正常...我猜是因为js(选项卡式面板)...有什么想法吗?

ASPX 代码

<script type="text/javascript">
        var hh;
        var left;

        function pageLoad(sender, args) {
            if (args.get_isPartialLoad()) {
                //Default Action
                hh = '<div id="convertThis">' + $("#convertThis").html() + '</div>';
                var tab1 = $("#convertThis").advancedTabs({
                    tabPosition: 'top',
                    visibleTabItem: 3,
                    whereAmI: false,
                    width:728,
                    hideTabs: true
                });
            }
        }

    </script>


<asp:UpdatePanel ID="UpdatePanelMainContent" runat="server">
       <ContentTemplate>
    <div class="barbig left padright">
      <div class="ccs2008header">
        <h4 id="h4header" runat="server" class="css2008fontstyle"></h4>
      </div>  

      <div id="convertThis">
                    <div id="tabs">
                        <div rel="divUpdatePanel" >
          <asp:LinkButton ID="LinkButtonDefinitions" runat="server" OnClientClick="LinkButtonDefinitions_Click">Definitions</asp:LinkButton></div>
                        <div rel="divUpdatePanel">Employees</div>
                        <div rel="divUpdatePanel" >Family</div>
                        <div rel="d" >Home Town</div>
                        <div rel="e">Other Than Home Town</div>
                        <div rel="f" >Admissibility</div>
                        <div rel="g" >Types Of LTC</div>
                        <div rel="h" >Block Period</div>
                        <div rel="i">Entitlement</div>
                        <div rel="j" >Advance</div>
                        <div rel="l" >Adjustment of advance</div>
                        <div rel="n" >Reimbursement</div>
                        <div rel="o" >Carry Over & Forfeiture of claim</div>
                        <div rel="o" >Relaxations & Interpretations</div>
                    </div>
                    <div id="divs">
                        <div id="divUpdatePanel" runat="server">

                        </div>

                    </div>
                </div>
    </div>
        </ContentTemplate>

        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="LinkButtonDefinitions" />
        </Triggers>

       </asp:UpdatePanel>

代码隐藏

 Public Sub loadContent(ByVal PageName As String)

        Dim _con As New SqlConnection(ConfigurationManager.ConnectionStrings("LeaveDBConnectionString").ConnectionString)
        Dim _da As New SqlDataAdapter("SELECT PageHeader,PageContent FROM PageKeeper WHERE PageName='" & PageName & "'", _con)
        Dim _table As New DataTable

        Try
            _con.Open()
            _da.Fill(_table)
            _con.Close()
            _con.Dispose()
            With _table.Rows(0)
                h4header.InnerText = .Item(0)
                divUpdatePanel.InnerHtml = .Item(1)
                Me.Title = .Item(0)
            End With

        Catch ex As Exception
            MsgBox(ex.Message)
            divUpdatePanel.InnerText = "No Data Found"
        Finally
            _con.Close()
            _con.Dispose()
        End Try
    End Sub

    Protected Sub LinkButtonDefinitions_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButtonDefinitions.Click
        loadContent("Definitions")
    End Sub

【问题讨论】:

  • 我没有收到任何错误...我从数据库中获取的数据没有显示在 div 中...但是如果我将 div 移出选项卡式面板...它开始工作。
  • 为什么有这么多反对票?

标签: c# asp.net vb.net


【解决方案1】:

可能您没有在代码中的任何位置初始化pageLoad

var prm = Sys.WebForms.PageRequestManager.getInstance();    
prm.add_endRequest(pageLoad);

这个pageLoad不是一个从UpdatePanel自动调用的函数,你需要在javascript部分初始化它。实际上不是一个已知函数,所以我猜你是从没有这部分的地方复制粘贴这段代码。

【讨论】:

  • 感谢您的回复...但我想我的 js 中有这个 function pageLoad(sender, args) { if (args.get_isPartialLoad()) { 这就是您所说的??如果我错了,请纠正我
  • @user1150440 你没有上面的代码!你看见了吗 ?和你的不一样……
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-07
  • 1970-01-01
  • 1970-01-01
  • 2013-03-12
  • 2013-10-09
  • 2010-12-24
  • 1970-01-01
相关资源
最近更新 更多