[英]Issue with disabled textboxes being re-enabled on form submit
請原諒我,但是我仍然對整個編程工作還是陌生的,而且我一直無法為查詢找到更具體/直接的答案。
我有一個內置在asp.net C#中的表單,該表單從數據庫中提取數據。 如果存儲過程發現任何內容,它將運行並自動填充一系列文本框-用戶名,電子郵件,電話號碼等。然后將禁用填充字段,因此用戶無法更改所帶來的內容。 如果需要,將保留空白字段供用戶完成。
但是,當用戶提交表單時-如果表單未能通過驗證-則啟用了以前禁用的字段(帶有數據的字段),允許用戶根據需要覆蓋它們-但我需要防止這種情況的發生; 無論如何,要防止那些被我的原始數據禁用的字段在返回時重新啟用?
我正在禁用按鈕單擊事件中的字段。 這些字段在頁面加載時被禁用:
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";
}
}
在.aspx頁面的文本框定義中,添加Readonly = true或添加enabled = false。
它將永久禁用文本框
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.