在gridview页面更改后Jquery colorbox不起作用
Posted
技术标签:
【中文标题】在gridview页面更改后Jquery colorbox不起作用【英文标题】:Jquery colorbox not working after gridview page change 【发布时间】:2016-06-11 23:39:51 【问题描述】:我在使用带有 gridview 分页的 Jquery colorbox 时遇到问题。 当第一次加载页面时,colorbox 工作正常,但是当我通过分页更改 gridview 页面时,它不起作用。
这是我的 javascript 代码
<script type="text/javascript">
$(document).ready(function ()
$(".example6").colorbox(
iframe: true, innerWidth: 425, innerHeight: 173, onClosed: function ()
($get('<%= btnInsertData_dummy.ClientID %>')).click();
);
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(EndRequestHandler);
);
function EndRequestHandler(sender, args)
$(".example6").colorbox(
iframe: true, innerWidth: 425, innerHeight: 173, onClosed: function ()
var path = sender._postBackSettings.sourceElement.pathname;
var myArray = new Array();
myArray = path.split('/');
if (myArray[1].toString() != "Default.aspx")
($get('<%= btnInsertData_dummy.ClientID %>')).click();
);
</script>
在 gridview 中,我在 Rowdatabound 上绑定超链接
if (e.RowType != GridViewRowType.Data) return;
var securrityKey = e.GetValue("str_securitykey");
System.Web.UI.WebControls.HyperLink grdHyper =
grid.FindRowCellTemplateControl(e.VisibleIndex, null, "grdhyper")
as System.Web.UI.WebControls.HyperLink;
if (securrityKey.ToString() != "")
grdHyper.Visible = false;
else
var number = e.GetValue("lng_rndnum");
var lngId = e.GetValue("lng_id");
grdHyper.CssClass = "example6 cboxElement";
grdHyper.NavigateUrl = "GenerateSecurityKey.aspx?number=" + number.ToString() + "&id=" + lngId.ToString();
点击分页后不工作
【问题讨论】:
【参考方案1】:在您的 jquery 代码中将您的代码从 add_endRequest
更改为 add_pageLoaded
。并删除您的(document).ready(function()
jquery 代码并将您的颜色框方法代码放在add_pageLoaded
方法中。希望这可以解决您的问题。
【讨论】:
以上是关于在gridview页面更改后Jquery colorbox不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Gridview中的JQuery如何在文本框在同一行更改时检查复选框
使用 JQuery Sortable 重新排序后如何将 .NET Gridview 行顺序保存到数据库