現在、Textbox
の以前の値を保存し、ontextchanged
の新しい値と比較しようとしています。しかし、今問題は、私が比較のために以前の値を格納しようとするたびに、値はnull
です。以前の値を保存して新しい値と照合します
以前の値を保存する方法はありますか?
これは私が試したコードです。 tbDesc
と仮定Hello World
の古い値を持っている、と私はASP.NET WebフォームでHello
ASPX
public string oldvalue = "";
protected void Page_Load(object sender, EventArgs e)
{
oldvalue = tbDesc.Text;
}
protected void tbDesc_TextChanged(object sender, EventArgs e)
{
string newvalue = tbDesc.Text;
if (newvalue != oldvalue)
{
tbDesc.BackColor = Color.Yellow;
}
else
{
tbDesc.BackColor = Color.White;
}
}
ページロードでのみ古い値を設定しているためです。 TextChangedイベントの最後に古い値を設定する必要があります。 OnBlurイベントを使用して、テキストボックスフォーカスが削除されたときにのみ古い値が設定されるようにします。 –
さらに良い方法があります。タイマーを使用する。ユーザーが3秒後に入力を停止したときに古い値を設定します。 –
@ M.kazemAkhgary問題は、ページの読み込み時に、私は古い値を設定しますが、textchangedイベントでは古い値はnullです。 – Arane