さまざまな入力を含むフォームがあり、そのうちのいくつかは「タイトル」プロパティを使用してヒント付きテキストを入力内に配置します。フォームが送信されると、各入力の値を含む電子メールが送信されます。ただし、フィールドが入力されていない場合は、タイトルが値として使用されます。空のフィールドを確認し、次のように値を手動で削除できます。
if (a_eventSelect.Attributes["title"] == a_eventSelect.Value)
{
a_eventSelect.Value = "";
}
これに関する問題は、フォームに多数の入力がある場合、それぞれの入力をチェックするのが不必要に面倒になる可能性があることです。各コントロールをチェックし、空かどうかをクリアする関数の作成を開始しました。
protected void Page_Load(object sender, EventArgs e)
{
//initialize
base.Initialize();
//on reload of page
if (IsPostBack)
{
//clear blank values
clear(mainform);
//send email
SendEmail();
//display thank you
thankyou.Visible = true;
//hide main
main.Visible = false;
}
}
public void clear(Control location)
{
//for each control in location
foreach (Control c in location.Controls)
{
//if the control has child controls
if (c.HasControls())
{
//call function with new location
clear(c);
}
//some code to check value and title
}
}
私が理解できないように見えるのは、各コントロールを取得して実際にタイトルと値を比較する方法、または関数内でその値を変更する方法です。何が役立つか考えている人はいますか? 前もって感謝します。