我有LinkButton
<asp:LinkButton ID="lnkbuton" runat="server" OnClick="lnck" Text="hello">
实际上我有一个LinkButton和一个带有两个标签的TabContainer。当用户点击选项卡时,我正在清除GridView中的数据,但是当用户点击LinkButton时,我不想清除数据。因此,我想查找是否单击了LinkButton。
我做了类似的事。
function onBeginRequest(sender, args) {
$(document).ready(function(){
var shHide = "0";
$("#lnkbuton").click(function() {
shHide="1";
alert("clcik")
});
if (shHide == "0") {
ClearHideElement();
}
})
}
但这不起作用。警报永远不会被执行。
答案 0 :(得分:2)
aspx页面中的控件会生成自己的ID,但它们并不总是使用您提供的ID: http://msdn.microsoft.com/en-us/library/1d04y8ss.aspx
请改为尝试:
$("#<%= lnkbuton.ClientID %>").click(function() {
shHide="1";
alert("clcik")
});
答案 1 :(得分:0)
检查事件的目标,如果不是anchor
,请执行操作。
$("#lnkbuton").click(function(event) {
if (event.target != this) {
shHide="1";
alert("clcik")
}
});
target属性可以是为事件注册的元素 或其后代。将event.target与之比较通常很有用 这是为了确定事件是否由于事件而被处理 冒泡。这个属性在事件委托时非常有用 事件泡沫。