我在GridView中有linkbutton。 GridView具有客户端事件 - rowselect。单击LinkButton时,会触发客户端事件(rowselect)。我想在单击LinkButton时停止触发rowselect客户端事件。
任何解决方案?
例如。
GridView有3行,两列
Column 1 ---- Column 2 [LinkButton]
AAAAAA ---- test.aspx?ID=001
BBBBBB ---- test.aspx?ID=002
CCCCCC ---- test.aspx?ID=003
Client Side JavaScript (fired on GridView row selection)
function DisplayData(gridview row)
{
//get data from selected row.
}
如果选择行的第一列,则调用客户端事件,即可。但是当点击LinkButton时,重定向到test.aspx ..在客户端事件上没有火。
答案 0 :(得分:0)
您可以使用event.stopPropagation来停止事件传播。对于不支持e.stopPropagation()
的旧浏览器,您可以使用e.cancelBubble = true
document.getElementById("<%= yourRadDatePickerID.ClientID %>").onclick = function(e) {
if(e && e.stopPropagation )
{
e.stopPropagation();
}
else
{
e = window.event;
e.cancelBubble = true;
}
}
答案 1 :(得分:0)
向LinkButton
添加点击处理程序,以防止事件冒泡。使用event.stopPropagation()
。对于较旧的IE浏览器,请使用event.cancelBubble = true
:
<asp:LinkButton runat="server" OnClientClick="cancelClick(event)" ... />
function cancelClick(e) {
if (e.stopPropagation) e.stopPropagation();
e.cancelBubble = true;
}