【发布时间】:2023-03-21 10:29:01
【问题描述】:
我试图在更新弹出控件的值后显示一个模式弹出窗口,全部在客户端。
单击网格行中的链接按钮。使用该行中的一些数据,我调用一个 javascript 函数来填充模式弹出窗口的控件并显示它。模态弹出窗口很好,但控制都是空白的。 (删除 UpdateMode="Consitional" 无效)。 我已删除所有格式行以保持代码简短。
<asp:UpdatePanel runat="server" ID="upnlNewIDS" RenderMode="Inline" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel runat="server" ID="divReassign" Width="350" Style="border:solid 2px navy;display:none;background: url(../assets/images/bg3.gif);">
<asp:Label runat="server" ID="lblFacilityCount" />
<asp:Label runat="server" ID="lblCurrIDSName_BK" />
<asp:Label runat="server" ID="lblCurrSiteName" />
<asp:Button runat="server" ID="btnSOK" Text="OK" Width="75" />
<asp:Button runat="server" ID="btnCancel" Text="Cancel" Width="75" />
</asp:Panel>
<ajaxToolkit:ModalPopupExtender runat="server"
ID="mpeNewIDS"
TargetControlID="btnFake"
BackgroundCssClass="backgrondModal"
DropShadow="true"
BehaviorID="mpeNewIDS"
PopupControlID="divReassign"
CancelControlID="btnCancel" />
<asp:Button runat="server" ID="btnFake" Style="display:none" />
</ContentTemplate>
</asp:UpdatePanel>
这是显示链接的行的模板:
<a id='a_<%# Eval("IDSID") %>' href="javascript:void(0);"
onclick="PopulateView('<%# Eval("idsid") %>', '<%# Eval("cnt" %>', '<%# Eval("idsname") %>', '<%# Eval("sitename") %>')">Reassign</a>
Javascript: 我跟踪了代码,这个函数有所有正确的参数值。
function PopulateView(idsid, cnt, idsname, sitename) {
lblCurrIDSName_BK = document.getElementById('<%=lblCurrIDSName_BK.ClientID %>');
lblFacilityCount = document.getElementById('<%=lblFacilityCount.ClientID %>');
lblCurrSiteName = document.getElementById('<%=lblCurrSiteName.ClientID %>');
lblCurrIDSName_BK.value = idsname;
lblCurrSiteName.value = sitename;
lblFacilityCount.value = cnt;
ShowNewIDSModalPopup();
}
function ShowNewIDSModalPopup() {
$find("mpeNewIDS").show();
return false;
}
function HideNewIDSModalPopup() {
$find("mpeNewIDS").hide();
return false;
}
单击网格行中的链接时,我调用“PopulateView('a', 'b', 'c', 'd')”,其中 a、b、c 和 d 来自该行的选定列.
【问题讨论】:
标签: javascript asp.net updatepanel c#-2.0 modalpopupextender