我在更新文本框时遇到了困难,可以真正使用一些帮助。基本上,我有一个弹出式面板供用户选择一个值,然后我将其填充到某个文本框中。
我确信这个问题要么解决得非常简单,要么我对回复实际上做的事情感到困惑。以下是我的代码的信息:
protected void grvSearchRecords_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (string.Compare(e.CommandName, "EditRow", true) == 0)
{
long nMagic2Value = Convert.ToInt64(e.CommandArgument);
string tmp = GetItem(nMagic2Value, currentTableName);
textBox1.Text = tmp;
Debug.WriteLine(textBox1.Text.ToString());
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "SearchRecords", "$(document).ready(function(){ $('#mask, #divSearchRecordsGrid').fadeOut(\"fast\"); });", true);
}
}
" tmp"变量获取我需要的值并将其分配给文本框。
然后我运行一个Debug语句并确认该值已正确分配给该框。但是,一旦函数结束,该指定的值就会丢失,并且文本框永远不会填充新值。
答案 0 :(得分:2)
围绕回复检查包裹您的代码
if (!IsPostBack)
{
//your code here
}
这将确保您的代码在回发后不会运行,因此您的textBox将不会被清除。
回发意味着页面第一次没有呈现,例如页面刷新。
答案 1 :(得分:0)
好的,我刚刚开始工作了。我试图更改的文本框是Content标记的一部分,没有别的。我将它包含在UpdatePanel中并为我的GridView添加了一个触发器,现在它可以工作了!
学习新语言的乐趣。