UpdatePanel问题.急急...在线等 .解决立马结贴.各位大虾们帮帮忙

wangping_li 2008-07-02 03:16:00

<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel4" runat="server"
Width="124px" Height="16px">*一级单位:</asp:label></TD>
<TD style="HEIGHT: 32px">

<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:DropDownList ID="DP_Depart1" runat="server" Width="222px"
AutoPostBack="True" onselectedindexchanged="DP_Depart1_SelectedIndexChanged">
</asp:DropDownList>
</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel5" runat="server"
Width="124px" Height="16px">二级单位:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:DropDownList ID="DP_Depart2" runat="server" Width="222px" Enabled="False">
</asp:DropDownList>

</ContentTemplate>
</asp:UpdatePanel>
</TD>
<TD class="style10">
 </TD>
</TR>

上面是我的HTML代码

protected void Page_Load(object sender, EventArgs e)
{

ScriptManager1.RegisterAsyncPostBackControl(DP_Depart1);
if (!IsPostBack)
{
Bind_DP();
}
}
void Bind_DP()//绑定部门信息列表
{
DataCollection<DepartInfo1SDO> depart1collection = getDepart1Service().FindByAll();
foreach (DepartInfo1SDO depart1 in depart1collection)
{
if (depart1 is DepartInfo1SDO)
{
DP_Depart1.Items.Add(depart1.DepartName);
}
}


}
protected void DP_Depart1_SelectedIndexChanged(object sender, EventArgs e)
{
string depart1 = DP_Depart1.SelectedValue.ToString();
DataCollection<DepartInfo1SDO> depart1collection = getDepart1Service().FindByDepartName(depart1);
Guid guid = Guid.Empty;
if (depart1collection != null)
{
foreach (DepartInfo1SDO depart in depart1collection)
{
if (depart is DepartInfo1SDO)
{
guid = depart.DepartID;
}
}
}

DataCollection<DepartInfo2SDO> depart2collection = getDepart2Service().FindByParentID(guid);
if (depart2collection != null && depart2collection.Count > 0)
{
DP_Depart2.Enabled = true;
foreach (DepartInfo2SDO depart2 in depart2collection)
{
DP_Depart2.Items.Add(depart2.DepartName);
}
}
else
{
setJS("该单位下没有子单位信息!");
DP_Depart2.Enabled = false;
DP_Depart2.Items.Clear();
}
UpdatePanel1.Update();
}

我想实现的功能是二级联动无刷新效果.可加上这个UpdatePanel后没有反应.哪里错了.还望知道的大虾们赐教.先谢过了.
...全文
142 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangping_li 2008-07-03
  • 打赏
  • 举报
回复
没人了?
wangping_li 2008-07-03
  • 打赏
  • 举报
回复
应该不会吧.微软能犯这种错误?个人认为还是自己的写法有问题.放的地方不对.
sssjjjpppsjp 2008-07-03
  • 打赏
  • 举报
回复
搞不懂,经常碰到,估计可能是软件本身的问题吧
wangping_li 2008-07-03
  • 打赏
  • 举报
回复
怎么都没人?高手呢?
wangping_li 2008-07-03
  • 打赏
  • 举报
回复
我加分.望高手们帮帮忙.没弄出来心里不爽.换了N种方法了.
wangping_li 2008-07-03
  • 打赏
  • 举报
回复
config怎么配?2008还要配?不是说直接就用吗?楼上的兄弟怎么配啊.望赐教.谢谢
halk 2008-07-03
  • 打赏
  • 举报
回复
晕哦!中文地址出乱子的事情,碰到好几个了
wangping_li 2008-07-03
  • 打赏
  • 举报
回复
问题已经解决...
原因:因为我的这个页面放在一个中文的文件夹下面.改成英文就好了.原来问题出在这.
hebeijg 2008-07-02
  • 打赏
  • 举报
回复
你的config配了吗?
wangping_li 2008-07-02
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 jerry_zuo 的回复:]
ScriptManager1.RegisterAsyncPostBackControl(DP_Depart1);
这个是指你局部刷新控件,如果你此页面没有其他的updatepanel.没必要写这个.
现在直接用脚本ajax,写的多,这个东西还是以前用过,你再试下.把这个东西去掉.
[/Quote]
谢谢.去掉还是不行.呵呵.还说08里面这控件好用.我第一次就没弄出来.失败啊.不知道哪错了.还是换成ajax写吧.
非常感谢你的意见..
jerry_zuo 2008-07-02
  • 打赏
  • 举报
回复
ScriptManager1.RegisterAsyncPostBackControl(DP_Depart1);
这个是指你局部刷新控件,如果你此页面没有其他的updatepanel.没必要写这个.
现在直接用脚本ajax,写的多,这个东西还是以前用过,你再试下.把这个东西去掉.
wangping_li 2008-07-02
  • 打赏
  • 举报
回复
高手们帮帮忙啊
wangping_li 2008-07-02
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 jerry_zuo 的回复:]
把这个 <asp:ScriptManager ID="ScriptManager1" runat="server" />
放在一个table外面
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>也一样.
[/Quote]



<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<table id="Table3" style="WIDTH: 373px; HEIGHT: 160px" cellspacing="1" bordercolorDark="steelblue"
cellpadding="1" align="center" border="1" runat="server">


<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel4" runat="server"
Width="124px" Height="16px">*一级单位:</asp:label></TD>
<TD style="HEIGHT: 32px">

<asp:DropDownList ID="DP_Depart1" runat="server" Width="222px"
AutoPostBack="True" onselectedindexchanged="DP_Depart1_SelectedIndexChanged">
</asp:DropDownList>

</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel5" runat="server"
Width="124px" Height="16px">二级单位:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:DropDownList ID="DP_Depart2" runat="server" Width="222px" Enabled="False"
AutoPostBack="True" onselectedindexchanged="DP_Depart2_SelectedIndexChanged">
</asp:DropDownList>


</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel6" runat="server"
Width="124px" Height="16px">三级单位:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:DropDownList ID="DP_Depart3" runat="server" Width="222px" Enabled="False">
</asp:DropDownList>

</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel7" runat="server"
Width="124px" Height="16px">录像机IP地址:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:TextBox ID="TB_IPAddress" runat="server" Width="222px" onblur="FormCheck()" ></asp:TextBox>
</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel8" runat="server"
Width="124px" Height="16px">通道号数量:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:TextBox ID="TB_DvrChanCount" runat="server" Width="89px" ></asp:TextBox>
</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel9" runat="server"
Width="124px" Height="16px">访问帐号:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:TextBox ID="TB_AccessName" runat="server" Width="222px"></asp:TextBox>
</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="right" class="style7">
<asp:label id="lblDepartLevel10" runat="server"
Width="124px" Height="16px">访问密码:</asp:label></TD>
<TD style="HEIGHT: 32px">
<asp:TextBox ID="TB_AccessPassword" runat="server" Width="222px"
Font-Bold="True" TextMode="Password"></asp:TextBox>

</TD>
<TD class="style10">
 </TD>
</TR>
<TR>
<TD align="center" colSpan="2">
<asp:button id="btnAdd" runat="server" Height="24px"
Width="96px" Text="保存" onclick="btnAdd_Click"></asp:button>     
<asp:button id="btnReturn" runat="server" Height="24px" Width="92px" Text="返回"
CausesValidation="False" onclick="btnReturn_Click"></asp:button></TD>
<TD align="center" class="style8"> </TD>
</TR>
</TABLE>
</ContentTemplate>
</asp:UpdatePanel>

现在我已经放到Table外了.但还是没反应.在后台代码PageLoad里面
ScriptManager1.RegisterAsyncPostBackControl(DP_Depart1);这个注册的control应该是什么?我用的是我选择那个下拉列表框
wangruibaobei 2008-07-02
  • 打赏
  • 举报
回复
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true">
</asp:ScriptManager>
jerry_zuo 2008-07-02
  • 打赏
  • 举报
回复
把这个<asp:ScriptManager ID="ScriptManager1" runat="server" />
放在一个table外面
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>也一样.
wangping_li 2008-07-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jerry_zuo 的回复:]
引用 6 楼 wangping_li 的回复:
你的布局 检查一遍,
事件 写在 droplist_textchanged里面试下 ,你写那里面 index也许没有值 .呵呵
[/Quote]
布局是对的.要么就是控件放的位置不对.写在index时是有值的.当我不用这个不刷新控件时结果都是正确的.加上这个就不对了.
用这个控件时应该注意哪些地方.网上找了很多方法.都一样的.我就是出不来结果
jerry_zuo 2008-07-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wangping_li 的回复:]
To:halk我本来是有Table的.没贴出来而已.只把要不刷新的贴出来了.还是不对啊.哪位高手帮帮忙
[/Quote]
你的布局 检查一遍,
事件 写在 droplist_textchanged里面试下 ,你写那里面 index也许没有值 .呵呵
wangping_li 2008-07-02
  • 打赏
  • 举报
回复
自己顶.怎么没人.急..不知道哪位置弄错了
wangping_li 2008-07-02
  • 打赏
  • 举报
回复
To:halk我本来是有Table的.没贴出来而已.只把要不刷新的贴出来了.还是不对啊.哪位高手帮帮忙
wangping_li 2008-07-02
  • 打赏
  • 举报
回复

protected void DP_Depart1_SelectedIndexChanged(object sender, EventArgs e)
{
string depart1 = DP_Depart1.SelectedValue.ToString();
DataCollection<DepartInfo1SDO> depart1collection = getDepart1Service().FindByAll();
DepartInfo1SDO getDepart1ID = depart1collection.Find(new Predicate<DepartInfo1SDO>(delegate(DepartInfo1SDO obj) { return obj.DepartName == depart1; }));

DataCollection<DepartInfo2SDO> depart2collection = getDepart2Service().FindByParentID(getDepart1ID.DepartID);
if (depart2collection != null && depart2collection.Count > 0)
{
DP_Depart2.Enabled = true;
foreach (DepartInfo2SDO depart2 in depart2collection)
{
DP_Depart2.Items.Add(depart2.DepartName);
}
}
else
{
setJS("该单位下没有子单位信息!");
DP_Depart2.Enabled = false;
DP_Depart2.Items.Clear();
}

}

那在这个selectindex事件里要不要UpdatePanel.update();
加载更多回复(4)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧