Asp.net 如何仅在首次加载页面时显示模型弹出窗口
我第一次加载页面时使用了下面的代码来显示模型弹出窗口Asp.net 如何仅在首次加载页面时显示模型弹出窗口,asp.net,Asp.net,我第一次加载页面时使用了下面的代码来显示模型弹出窗口 <script type="text/javascript"> function pageload() { var chkPostBack = '<%= Page.IsPostBack ? "true" : "false" %>'; if (chkPostBack == 'false') { var popup = $find('ModalPopupExtender1');
<script type="text/javascript">
function pageload() {
var chkPostBack = '<%= Page.IsPostBack ? "true" : "false" %>';
if (chkPostBack == 'false') {
var popup = $find('ModalPopupExtender1');
if (popup != null) {
popup.show();
}
}
}
函数pageload(){
var chkPostBack='';
如果(chkPostBack=='false'){
var popup=$find('ModalPopupExtender1');
如果(弹出!=null){
popup.show();
}
}
}
我有以下错误,请帮助我
The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).
无法修改控件集合,因为控件包含代码块(即)。
我建议从.net代码中执行此代码,然后您可以执行iPostBack检查,或者即使您只希望在整个会话中执行一次,那么一旦您从.net代码中运行JS,请将会话(“ShowPopup”)设置为false,然后进行检查
但是,对于此问题,请尝试更改代码块以开始:
<%# instead of <%=
我建议从.net代码中执行此代码,然后您可以执行iPostback检查,或者即使您只希望在整个会话中执行一次,那么一旦您从.net代码中运行JS,请将会话(“ShowPopup”)设置为false,然后进行检查
但是,对于此问题,请尝试更改代码块以开始:
<%# instead of <%=
如果(!Page.IsPostBack)
,我建议从codebehind显示modalpoup
。因此,您可以使用ModalPopupExtender
的Show
方法
if(!Page.IsPostBack)
{
ModalPopupExtender1.Show();
}
要使其能够从服务器端打开,您需要将ModalPopupExtender
的TargetControlID
设置为隐藏按钮:
<asp:Button ID="Hid_ShowDialog" Style="display: none" runat="server" />
我建议在(!Page.IsPostBack)
中显示codebehind中的modalpoup
。因此,您可以使用ModalPopupExtender
的Show
方法
if(!Page.IsPostBack)
{
ModalPopupExtender1.Show();
}
要使其能够从服务器端打开,您需要将ModalPopupExtender
的TargetControlID
设置为隐藏按钮:
<asp:Button ID="Hid_ShowDialog" Style="display: none" runat="server" />
谢谢你的回复,我用了#而不是=。现在它可以工作了,但是弹出窗口会显示每次回发。我只想第一次展示它上面的回复是我说的,但是它有更详细的信息,请查看。谢谢你的回复,我用了#而不是=。现在它可以工作了,但是弹出窗口会显示每次回发。我只想第一次展示它上面的回复是我说的,但是它有更完整的细节,请查看。