Ajax加载div,加载页面上的autopost返回不起作用

时间:2011-10-03 16:23:45

标签: jquery .net asp.net ajax

我有一个运行jquery onclick事件的页面。该事件将外部.aspx文件加载到div中。正在加载的页面有一个下拉列表,其中包含一个autopostback属性,用于将所选项目传递给标签。

除了正在加载的.aspx文件只返回一次之外,一切正常。之后不再有autopostback。这是我的代码

----- external.aspx ------

<script> 
protected void ddlPrices_SelectedIndexChanged(object sender, EventArgs e)
   {
    lblPrice.Text = ddlPrices.SelectedValue.ToString();
   }
</script>


<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:DropDownList ID="ddlPrices" runat="server" AutoPostBack="true" 
    onselectedindexchanged="ddlPrices_SelectedIndexChanged">
<asp:ListItem>Basic</asp:ListItem>
<asp:ListItem>Pro</asp:ListItem>
<asp:ListItem>Platinum</asp:ListItem>
<asp:ListItem>Baller!</asp:ListItem>
</asp:DropDownList> 

<asp:Label ID="lblPrice" runat="server"></asp:Label>          
</ContentTemplate>
</asp:UpdatePanel>

---- default.aspx ------

<script>
$(document).ready(function () {
$("li#empNav1").click(function () {
$("div.subItem").load('external.aspx');
});
});
</script>

<ul class="nav-left">
<li id="empNav1" class="selected"><a href="#">Employer Overview</a></li>
<li id="empNav2"><a href="#">Why We're Better</a><span></span></li>
</ul>
<div class="subItem"></div>

如上所述div加载得很好,但external.aspx只会更新lblPrice一次。然后它不再自动更新。任何帮助将非常感谢具体细节....

更新我已经尝试将ddl和postback放入external.aspx引用的控件中,但也不起作用。

1 个答案:

答案 0 :(得分:0)

我会尝试使用Server.Execute将外部页面加载到OnSelectedIndexChanged事件中的DIV中。确保将runat="server"添加到DIV,或将div更改为Panel(解析为DIV)