我想分配mouseclick
事件至asp.net panel
:
protected void Page_Load(object sender, EventArgs e)
{
Panel p = new Panel();
p.Click += new EventHandler(b_Click);//but, this doesn't compiles correctly
}
protected void b_Click(object sender, EventArgs e)
{
//C#code
}
有什么办法可以在面板上添加点击事件吗?
您可以执行以下操作来使面板可单击并在服务器端处理事件。
将面板放入您的 Web 表单中
<asp:Panel runat="server" ClientIDMode="Static" ID="clickMe">
Click here
</asp:Panel>
将 jQuery 脚本库添加到您的页面。
<script src="http://code.jquery.com/jquery.min.js" language="javascript"
type="text/javascript"></script>
定义以下客户端事件处理程序
$(document).ready(function() {
$("#clickMe").click(function () {
__doPostBack('clickMe', '');
});
});
在服务器端处理事件。
protected void Page_PreRender(object sender, EventArgs e)
{
this.Page.ClientScript.GetPostBackEventReference(clickMe, "");
}
protected void Page_Load(object sender, EventArgs e)
{
if (Request.Form["__EVENTTARGET"] == "clickMe")
{
ClickMeOnClick();
}
}
PreRender事件处理程序中的代码用于asp.net框架在客户端渲染__doPostBack函数。如果您的页面包含导致自动回发的控件,则不需要此代码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)