javascript - 为什么模板中的模态弹出窗口只显示在某些页面上?
问题描述
目标:让模态弹出窗口在所有页面上工作(注意:它是在代码隐藏中完成的,因为我需要同时/在弹出窗口显示之前发生一些操作)
问题:我有一个模式弹出窗口,可以在一个页面上工作(使用 Site.Master 模板),但在另一页面上不起作用(使用 SiteValidation.Master 模板)模板看起来相同,但 javascript 引用放置在较低位置SiteValidation.Master 的 aspx——我不知道为什么作为编写此代码的开发人员不再与我们在一起
当用户单击复选框切换时,我正在从代码隐藏中调用模式
我试过的: 我试过调试,它到达了 ScriptManager.RegisterStartupScript 和 upModal.Update() 但弹出窗口没有显示在使用 SiteValidation.Master 的页面上我也尝试过移动 js 引用,但它没有help 我尝试切换备用页面以使用 Site.Master 而不是 SiteValidation.Master 但这会导致新问题
Site.Master:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="Admin.SiteMaster" %>
<!DOCTYPE html>
<html lang="en">
<head runat="server">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="xxxx-yyyyyy+zzzzzzz/aaaaa" crossorigin="anonymous">
<link href="Content/admin.css" rel="stylesheet" />
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="xxxx-yyyyyy+zzzzzzz/aaaaa" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="xxxx-yyyyyy+zzzzzzz/aaaaa" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="xxxx-yyyyyy+zzzzzzz/aaaaa" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" integrity="xxxx-yyyyyy+zzzzzzz/aaaaa" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/gijgo@1.9.10/js/gijgo.min.js" type="text/javascript"></script>
<link href="https://cdn.jsdelivr.net/npm/gijgo@1.9.10/css/gijgo.min.css" rel="stylesheet" type="text/css" />
</head>
<body>
<asp:CheckBox ID="chkOnOff12" runat="server" AutoPostBack="true" OnCheckedChanged="cbUpdateAvailability_Click" />
<div class="modal fade" id="availabilityModal" tabindex="-1" role="dialog" aria-labelledby="availabilityModal" aria-hidden="true">
<div class="modal-dialog" role="document">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="upModal" runat="server" ChildrenAsTriggers="false" UpdateMode="Conditional">
<ContentTemplate>
<div class="modal-content">
<div class="modal-header">
<b style="text-align:center;">AVAILABILITY CHANGE</b>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-12">
<p align="center">Are you sure you want to make <asp:Literal ID="ProfName" runat="server" /> <asp:Literal ID="availableTxt" runat="server" />?</p>
</div>
</div>
<br />
</div>
<div class="modal-footer">
<div class="margin-center">
<asp:Button ID="btnUpdateAvailability" AutoPostBack="true" runat="server" Text="Yes" CssClass="btn btn-green" ClientIDMode="Static" OnClick="btnUpdateAvailability_Click"/>
<asp:Button ID="btnUpdateAvailabilityNo" AutoPostBack="true" runat="server" Text="No" CssClass="btn btn-secondary" ClientIDMode="Static" OnClick="btnUpdateAvailability_Click"/>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
...
</body>
</html>
站点.Master.cs:
protected void cbUpdateAvailability_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "availabilityModal", "$('#availabilityModal').modal();", true);
upModal.Update();
}
SiteValidation.Master.cs:
protected void cbUpdateAvailability_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "availabilityModal", "$('#availabilityModal').modal();", true);
upModal.Update();
}
如何让模态弹出窗口也显示在使用 SiteValidation.Master 的页面上?
解决方案
推荐阅读
- node.js - 那么我应该将 .env 文件保存在哪里?
- python - 如何在 C++ 中使用 TF 2.x 的预训练模型
- php - password_verify 适用于 localhost 但不适用于虚拟主机(webhost)
- php - 通过单击批准和拒绝按钮更新列
- sybase-ase15 - Sybase 12.5 与 15.0 客户端连接库:插入 15.7 ASE 时使用 15.0 插入速度慢 10 倍
- linux - Git:git分支名称“?[m”末尾的多余字符是什么?
- tensorflow - How can i convert a tensorflow.js model saved from google's teachablemachine to a keras.hdf5 or tflite model?
- javascript - 为什么可折叠不适用于动态创建的按钮
- java - How foreach works for List of Lists in JSP
- reactjs - custom css style not work in React Bootstrap