【发布时间】:2010-08-18 23:15:40
【问题描述】:
将 SimpleModal 与 ASP.NET 和 MasterPages 集成
这是上一个帖子here 的延续。
感谢我之前收到的帮助,代码在一个页面中运行,我能够使用 SimpleModal。但是我的应用程序有 MasterPages,所以我将它粘贴到另一个测试表单中。结果与我在没有 MasterPage 的情况下运行的测试不同。如果没有 MasterPage,模式会打开并保持打开状态,直到用户关闭。使用此 MasterPage 版本,模式仅打开一秒钟,然后关闭。有人知道为什么吗?
下面是默认的示例母版页。未进行任何编辑。
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Test.master.cs" Inherits="Test" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
这是来自网页的 jquery 调用。
注意:这包含与我上面提到的上一篇文章完全相同的 jquery 代码,只是我现在指向本地 .js 文件。
<%@ Page Title="" Language="C#" MasterPageFile="~/test.master" AutoEventWireup="true" CodeFile="test2.aspx.cs" Inherits="test2" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<style type="text/css">
#simplemodal-overlay {background-color:#000;}
#simplemodal-container {background-color:#333; border:8px solid #444; padding:12px;}
</style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div>
Email: <input type="text" id="email" /><br />
Message: <input type="text" id="message" /><br />
<button id='theModal'>Show</button>
<div id="sample" style="display:none">
<h2>Sample Data</h2>
<p>Your email was successful!!</p>
<p>You can press ESC to close this dialog or click <a href="#" class="simplemodal-close">close</a>.</p>
</div>
</div>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.simplemodal.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#theModal").click(function() {
$("#sample").modal({
opacity: 80,
overlayCss: { backgroundColor: "#fff" }
});
});
});
</script>
</asp:Content>
我尝试将声明移至 MasterPage。它还导致了一个闪烁的模态。不知道为什么我是一个完整的 jquery 菜鸟。
任何帮助将不胜感激。
维克多
【问题讨论】:
标签: asp.net jquery popup panel simplemodal