0

我正在尝试使用 onTextChange 事件来更新文本框,然后我正在使用按钮在数据库中更新它。每次我尝试使用时,它都会将值设置为“”,我真的不知道我做错了什么还是做对了。如果有人可以请帮助,那就太好了。谢谢

ASP.NET 代码:

<asp:TextBox ID="tbPLName" runat="server" OnTextChanged="tbPLName_TextChanged" />
<asp:Button ID="btUpdate" runat="server" Text="Update Name" OnClick="btUpdate_Click"   />

C#代码:

string lastName;
protected void btUpdate_Click(object sender, EventArgs e)
    {
        tbCheck();
    }

    protected void tbPLName_TextChanged(object sender, EventArgs e)
    {
        lastName = tbPLName.Text;
    }

另外,如果有更好的方法,请告诉我。我真的很想以最好的方式做到这一点。

4

2 回答 2

0

您正在创建和分配一个仅存在于 TextChanged 函数中的变量。在您展示的代码中,您正在将输入文本分配给一个变量,然后关闭该函数(它摆脱了该变量)。

编辑:我可能应该提到,如果您使用更新按钮更新数据库,则不需要 text_changed 事件,该代码如下所示:

protected void btUpdate_Click(object sender, EventArgs e)
{
    UpdateDatabase(tbPLName.Text);
}

EDIT2:您还说您想更新 TextChanged 上的数据库,但这不是您的代码所说的(尽可能少)。

如果您确实想这样做,请不要这样做。

于 2013-03-15T04:10:29.097 回答
0

我已经弄清楚我错过了什么。我不需要使用 ontextchanged 事件。我只需要做:

if(!Page.IsPostBack)
{

    // code

}

在页面加载的顶部,它工作正常。然后我可以调用改变数据库中文本的方法。

于 2013-03-26T16:53:58.100 回答