我有这个项目符号列表:
<asp:BulletedList ID="BLLinks" runat="server" Width="100%"
BulletStyle="CustomImage" BulletImageUrl="~/Images/link.png"
OnClick="BLLinks_Click" ></asp:BulletedList>
我需要获取相对于用户在此活动中点击的项目符号列表项的位置:
protected void BLLinks_Click(object sender, BulletedListEventArgs e)
{
// check the clicked position in the bulleted list
// if on the bulleted list image do so and so...
// if on the bulleted list item text do so and so....
}
答案 0 :(得分:0)
您可以使用客户端代码获取鼠标位置并将其存储在隐藏字段中。
这是标记:
<asp:HiddenField ID="hiddenMouseXY" runat="server" />
<asp:BulletedList onmousedown="bulletedListMouseDown(this, event);" ... >
...
</asp:BulletedList>
和Javascript功能:
function bulletedListMouseDown(lst, evt) {
var x = evt.pageX - lst.offsetLeft;
var y = evt.pageY - lst.offsetTop;
var coord = "X: " + x + ", Y: " + y;
alert(coord);
document.getElementById('hiddenMouseXY').value = coord;
}
如果您希望点击触发回发,可以在Javascript函数中调用__doPostBack
。