Wie ohne Post zurück in C# ASP.NET
Ich habe ein LinkButton
in masterpage
und auf Klick auf Linkbutton Schaltfläche Click-Ereignis von Klick auf Linkbutton von einer anderen Seite nennen, ich bin umgeleitet zu sagen wir Page1.aspx
. Auf Page1.aspx habe ich eine button1
. Auf das Klicken button1
, öffne ich neues Fenster, nicht die Daten der Page1.aspx
beeinflussend.
Aber wenn ich auf LinkButton
von Masterpage klicken, Umleitung zu Page1.aspx
und aus Code-behind, klicken button1
, Page1.aspx
‚s Daten wird geändert.
Wie Sie dies verhindern können. Ich stelle meinen Code zur Verfügung.
Linkbutton auf Masterpage:
<asp:LinkButton ID="lnkAppointMent" runat="server" OnClick="lnkAppointMent_Click"><span>Appointment Scheduler </span></asp:LinkButton>
Click-Ereignis von Linkbutton:
protected void lnkAppointMent_Click(object sender, EventArgs e)
{
Session["PhoneCenter"] = "Appointment";
Response.Redirect("PhoneMessage.aspx");
}
Pageload umlenken Seite (PhoneMessage.aspx):
protected void Page_Load(object sender, EventArgs e)
{
fillCustomTypeMessages();
if (!Page.IsPostBack)
{
.
.
.
else if (Session["PhoneCenter"].ToString() == "Appointment")
{
btnScheduleAppointments_Click(btnScheduleAppointments, null);
}
.
.
.
Knopf auf PhoneMessage.aspx:
<div style="float: right; padding-right: 120px">
<asp:Button ID="btnScheduleAppointments" runat="server" OnClick="btnScheduleAppointments_Click"
CssClass="button" Text="Schedule Appointments" ToolTip="Open appointment scheduler" />
</div>
RaisPostBack
Methode auf PhoneMessage.aspx:
protected override void RaisePostBackEvent(IPostBackEventHandler source, string eventArgument)
{
try
{
base.RaisePostBackEvent(source, eventArgument);
}
catch (Exception ex)
{
}
.
.
ps: wenn ich auf btnScheduleAppointment
klicken, wird source
Schedule Appointments
sein, und wenn ich auf lnkAppointMent
klicken, wird source
<span>Appointment Scheduler </span>
sogar, wenn ich btnScheduleAppointment
nenne auf klicken lnkAppointMent
.
Ereignis Click-Taste:
protected void btnScheduleAppointments_Click(object sender, EventArgs e)
{
if (!Permissions.checkPermissions(Session["employeeloggedin"].ToString(), "PHMSGVMD"))
{
ScriptManager.RegisterStartupScript(this, Page.GetType(), "OnLoad", "alert('You must have the Phone Messages: View and Modify permission to schedule appointments!')", true);
}
else
{
string script = String.Format("openNewWin('" + "phonescheduler.aspx" + "')");
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "openNewWin", script, true);
}
}
Script:
function openNewWin(url)
{
alert(url);
var open_link = window.open('', '_blank');
open_link.location = url;
}
Jede Klärung erforderlich. Bitte kommentieren.
danke für Ihre Mühe, Sir. Was wird "NoExec" hier sein? –
string script = String.Format ("openNewWin ('" + "phonesscheduler.aspx" +' ') "); ScriptManager.RegisterStartupScript (this.Page, this.GetType(), "openNewWin", Skript, true); –
Ich habe dies versucht, beim Laden von PhoneMessage.aspx Seite. Dadurch werden meine Daten der Seite nicht gelöscht. –