我是 ASP.NET 和 JQuery 的新手。
目前,我有 JQuery 的代码来加载两个不同的页面并根据两个不同的按钮单击传递值(由按钮 ID 控制)。好像我在复制代码,所以我想知道我是否可以让这个类似于 javascript 函数来传递 4 个参数(页面或 URL、RecordID、宽度、高度)。让我用代码解释一下。
我有这两个按钮:
<table width="80%" align="center" >
<tr>
<td width="45%"></td>
<td width="10%" class="PageTitle"></td>
<td width="45%" style="text-align:right;">
<asp:Button runat="server" CommandName="buttonCreateApprovedMDF" ID="buttonCreateApprovedMDF"
Text="Create Approved MDF" href="ApprovedCreateNew.aspx?AnotherID=" title="Create Approved MDF" class="button3"/>
<asp:Button runat="server" CommandName="buttonCreateNote" ID="buttonCreateNote"
Text="Create Note" href="ProposalCreateNote.aspx?ProposalID=" title="Create Note" class="button3"/>
</td>
</tr>
</table>
这是JQuery代码(重复),只是Page和RecordID不同,一切都一样。
$(document).ready(function () {
$('#<%= buttonCreateNote.ClientID %>').live('click', function(e) {
e.preventDefault();
var lblID = $("[ID$='ProposalID']").text();
var page = '<%= ResolveClientUrl("ProposalCreateNote.aspx")%>' + '?ProposalID=' + encodeURIComponent($('span[id$="ProposalID"]').text());
var pagetitle = $(this).attr("title");
//alert(page);
var $dialog = $('<div></div>')
.html('<iframe style="border: 0px; " src="' + page + '" width="100%" height="100%" frameBorder="0" align="middle"> ></iframe>')
.dialog({
autoOpen: false,
modal: true,
height: 650,
width: 900,
title: pagetitle
});
$dialog.dialog('open');
});
$('#<%= buttonCreateApprovedMDF.ClientID %>').live('click', function (e) {
e.preventDefault();
var lblID = $("[ID$='AnotherID']").text();
var page = '<%= ResolveClientUrl("ApprovedCreateNew.aspx")%>' + '?AnotherID=' + encodeURIComponent($('span[id$="AnotherID"]').text());
var pagetitle = $(this).attr("title");
//alert(page);
var $dialog = $('<div></div>')
.html('<iframe style="border: 0px; " src="' + page + '" width="100%" height="100%" frameBorder="0" align="middle"> ></iframe>')
.dialog({
autoOpen: false,
modal: true,
height: 650,
width: 900,
title: pagetitle
});
$dialog.dialog('open');
});
});
这些 JQuery 用于传递参数的标签(在 DetailsView 中)。
<asp:Label ID="ProposalID" runat="Server" style="text-align:left;"
Text='<%# Eval("ProposedID")%>' />
<asp:Label ID="AnotherID" runat="Server" style="text-align:left;"
Text='<%# Eval("AnotherID")%>' />
如何将上面复制的 JQuery 组合成一个函数,如“OpenIframe(URL,RecordID,宽度,高度)”?并可能使用 OnClientClick (带有这些参数)来触发 IFrame 弹出窗口?
提前致谢。