【发布时间】:2012-02-01 19:48:28
【问题描述】:
我在 UpdatePanel 中有一个 gridview。 gridview 中的一列是链接,单击时应显示模态(我使用的是 zurb 模态http://www.zurb.com/playground/reveal-modal-plugin)。问题是模式只在单击链接时显示一次,下次单击链接时它只会刷新页面。每次点击gridview内的链接时,都会显示模态框。
模态脚本:
function popupModal()
{
$("a.link").click(function (e) {
e.preventDefault();
$('#myModal #modalContents').load($(this).attr('href'));
$('#myModal').reveal();
});
}
GridView:
<asp:ScriptManager ID="smgr" runat="server" EnablePartialRendering="true" />
<asp:UpdatePanel ID="upnlSearchResults" runat="server" RenderMode="Inline">
<ContentTemplate>
<asp:GridView ID="gvResult" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="EmployeeID" HeaderText="Employee ID" />
<asp:TemplateField HeaderText="">
<ItemTemplate>
</td></tr>
<tr>
<td colspan="10">
<a href="Department.aspx" class="link">Detail Information</a>
</td>
</tr>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnSearch" />
</Triggers>
</asp:UpdatePanel>
<div id="myModal" class="reveal-modal">
<div id="modalContents"></div>
<a class="close-reveal-modal">×</a>
</div>
绑定 GridView 和注册 Modal PopUp 的代码
protected void btnSearch_Click(object sender, ImageClickEventArgs e)
{
var results = _presenter.GetEmployers();
gvResult.DataSource = results;
gvResult.DataBind();
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "popUp", "popupModal();", true);
}
编辑:我尝试调试 javascript 并且代码在它所在的行中中断 显示弹出窗口
function popupModal() { $("a.link").click(function (e) { e.preventDefault(); $('#myModal #modalContents').load($(this).attr('href')); $('#myModal').reveal(); -> [throws error in this line.] }); }由于我使用的是 zurb modal,它由 jquery.reveal.js 文件组成 其中包括显示功能。功能 popupModal 在我的 单独的js文件employee.js。由于错误消息是某事 像这样'对象不支持 IE 中的属性或方法'显示',我 我假设一旦第一次显示弹出模式,它 在 jquery.reveal.js 文件中找不到显示函数。
谁能帮我解决这个问题?
桑吉夫
【问题讨论】:
标签: javascript asp.net updatepanel modal-dialog scriptmanager