Кнопка ссылки не работает впервые в asp.net
У меня есть кнопка ссылки и событие Onclick. Я перенаправляю страницу из-за кода. Мой код выглядит следующим образом:
<asp:LinkButton ID="UserRoleLinkButton" runat="server" OnClick="UserRoleLinkButton_Click"></asp:LinkButton>
Я установил текст кнопки ссылки следующим образом:
string[] roleNames = Roles.GetRolesForUser(Page.User.Identity.Name);
if (roleNames.Count() > 1)
{
UserRoleLinkButton.Visible = true;
UserRoleLinkButton.Text = roleNames[1].ToString();
}
и в коде позади я делаю это
protected void UserRoleLinkButton_Click(object sender, EventArgs e)
{
try
{
if (UserRoleLinkButton.Text == "SuperAdmin")
{
Response.Redirect(@"~/Admin/AdminHome.aspx");
}
else if (UserRoleLinkButton.Text == "YPAdmin")
{
Response.Redirect(@"~/Admin/YellowPages/NotificationMaster.aspx");
}
else if (UserRoleLinkButton.Text == "YPOperator")
{
Response.Redirect(@"~/Admin/YellowPages/ManageListing.aspx");
}
else
{
Response.Redirect(@"~/Account/MyProfile.aspx");
}
}
catch (Exception ex)
{
BRMessengers.BRError(this, "Server Error");
log.Fatal(HttpContext.Current.Request.Url + " Message : " + ex.Message, ex);
}
}
что-то не так с этим кодом? Если да, то где. При первом щелчке отображается ошибка 404 (страница не найдена)
Примечание. [Когда я нажимаю второй раз, все работает нормально.] Я также попытался использовать javascript, но результат тот же. Вот мой код JavaScript
<script type="text/javascript">
function pageLoad(sender, args) {
$("#UserRoleLinkButton").live("click", function () {
if ($('[id$=UserRoleLinkButton]').text() === "SuperAdmin") {
alert('Test');
window.location.pathname = "Admin/AdminHome.aspx";
}
else if ($('[id$=UserRoleLinkButton]').text() === "YPAdmin") {
alert('Test1');
window.location.pathname = "Admin/YellowPages/NotificationMaster.aspx";
}
else if ($('[id$=UserRoleLinkButton]').text() === "YPOperator") {
alert('Test2');
window.location.pathname = "Admin/YellowPages/ManageListing.aspx";
}
else {
alert('Test3');
window.location.pathname = "Account/MyProfile.aspx";
}
});
}
</script>
Любое решение обязательно будет оценено.
Я видел этот вопрос для справки