Verzeihen Sie, aber ich bin immer noch neu in der ganzen Programmierung und konnte keine spezifischere/einfachere Antwort auf meine Anfrage finden.Problem mit deaktivierten Textfeldern, die beim Senden des Formulars wieder aktiviert werden
Ich habe ein Formular, das ich in asp.net C# erstellt habe, die Daten aus einer Datenbank bezieht. Eine gespeicherte Prozedur wird ausgeführt und füllt automatisch eine Reihe von Textfeldern auf, wenn sie etwas findet - den Namen, die E-Mail-Adresse, die Telefonnummer usw. eines Benutzers. Ausgeblendete Felder sind dann deaktiviert, sodass der Benutzer nicht ändern kann, was übertragen wurde. Leere Felder bleiben aktiviert, damit der Benutzer sie bei Bedarf vervollständigen kann.
Wenn der Benutzer jedoch das Formular abschickt - und wenn die Validierung fehlschlägt - werden zuvor deaktivierte Felder (solche mit Daten) aktiviert, so dass der Benutzer sie überschreiben kann, wenn sie wollen - aber ich muss dies verhindern; Gibt es trotzdem Felder, die deaktiviert wurden, weil meine ursprünglichen Daten bei der Rückkehr wieder freigegeben wurden?
Ich deaktiviere die Felder auf einem Button-Klick-Ereignis. Die Felder werden auf Seite Last deaktiviert:
protected void Page_Load(object sender, EventArgs e)
{
Page.Title = title;
Literal formHeader = (Literal)this.Master.FindControl("formHeader");
formHeader.Text = "Travel Booking Request";
if (!Page.IsPostBack)
{
Load_FormDetails();
Load_SeatingPreference();
Load_UserResponses();
Load_UndergroundTravelZones();
}
}
protected void Load_FormDetails()
{
string userName = "";
string userPhone = "";
string userTitle = "";
string userEmail = "";
List<KeyValuePair<string, string>> userDetails = Class1.GetUserDetails();
var name = userDetails.Where(kvp => kvp.Key == "UserDisplayName").Select(kvp => kvp.Value).First();
userName = name.ToString();
var phone = userDetails.Where(kvp => kvp.Key == "UserLandline").Select(kvp => kvp.Value).First();
userPhone = phone.ToString();
var jobtitle = userDetails.Where(kvp => kvp.Key == "UserJobTitle").Select(kvp => kvp.Value).First();
userTitle = jobtitle.ToString();
var email = userDetails.Where(kvp => kvp.Key == "UserEmail").Select(kvp => kvp.Value).First();
userEmail = email.ToString();
txtUserName.Text = userName;
if (txtUserName.Text != "")
{
txtUserName.Enabled = "false";
}
txtUserPhoneNumber.Text = userPhone;
if (txtUserPhoneNumber.Text != "")
{
txtUserPhoneNumber.Enabled = "false";
}
txtUserJobTitle.Text = userTitle;
if (txtUserJobTitle.Text != "")
{
pfptxtUserJobTitle.Enabled = "false";
}
txtUserEmail.Text = userEmail;
if (txtUserEmail.Text != "")
{
txtUserEmail.Enabled = "false";
}
}
deaktiviert machen, wo Sie hinzufügen, dass '= false' aktiviert ist, fügen Sie einen Code – Webruster
Sorry - mein schlecht. Ich habe meinen ursprünglichen Post bearbeitet, um Code hinzuzufügen. – chesh78
Wenn Sie Ihre 'TextBox' aktivieren möchten? –