在asp.net中捕获href事件

时间:2013-12-10 02:21:03

标签: c# javascript jquery asp.net

所以目前这里是我的代码(这是一个菜单栏,这就是为什么我不能使用asp链接按钮)

  <ul>
                    <li><a href="#"><span>Reconciliation</span></a>
                        <ul>
                            <li><a href="#"><span>Double Entry Per Total Expired</span></a></li>
                            <li><a href="#"><span>Additional Pulled Out Item per Printed SOR</span></a></li>
                            <li><a href="#"><span>Reclassification to proper account</span></a></li>
                            <li><a href="#"><span>Additional ren/red after expiry</span></a></li>
                        </ul>
                    </li>
                    <li><a href="#"><span>Reports</span></a>
                     <ul>
                            <li><a href="ReportPages.aspx"><span>Report Generation</span></a></li>
                            <li><a href="PrendaDEPage.aspx"><span>Upload Prenda</span></a></li>
                            <li><a href="NavFilesPage.aspx"><span>Navision Uploader</span></a></li>
                        </ul>
                    </li>

                    <li><a href="#" class="last"><span>Maintenance</span></a>
                        <ul>
                            <li><a href="UsersMaintenancePage.aspx"><span>Report Matrix</span></a></li>
                            <li><a href="BranchMaintenancePage.aspx"><span>Branches</span></a></li>
                            <li><a href="AuditTrailPage.aspx"><span>Audit Trail</span></a></li>
                        </ul>
                    </li>
                </ul>

我想在点击<a href>标签后添加一个会话变量,但我不知道如何在asp.net代码中捕获事件我尝试制作它runat="Server"但我找不到任何onclick事件,我可以使用它来工作..

有什么想法吗?

基本上我想要实现的流程是
Click href -> Create a session Variable Session["A"] -> response.redirect to my page.

修改: 带有<a href = #>的顶部菜单是我需要跟踪并在我将其重定向到另一个页面之前单击它们之后提供会话变量的菜单。这就是为什么我也使用#而不是页面的名称,并希望在点击事件中捕获<a href>(如果有的话)。

1 个答案:

答案 0 :(得分:2)

更改为LinkButton,如下所示

<li><asp:LinkButton ID="MyLink" runat="server" OnClick="MyLink_Click" Text="Double Entry Per Total Expired"></asp:LinkButton></li>

然后你可以在点击事件中完成剩下的工作

void MyLink_Click(Object sender, EventArgs e) 
{
    Session["A"] = "put some value here";
    Response.Redirect (myURL, false);
}

无论如何,如果您无法使用LinkBut​​ton,请尝试使用下面的onserverclick事件

<li><a href="#" onserverclick="MyLink_Click"  runat="server" id="MyLink"><span>Double Entry Per Total Expired</span></a></li>

在您的代码文件中

void MyLink_Click(Object sender, EventArgs e)
{
    // your code 
}