Formview 和 Listview 在 TextChange 选项卡上更新数据集
Formview & Listview Update dataset on TextChange tab out
我有一个表单视图和一个列表视图,它们在编辑模板中都有一个名为 "Grade_CodeTextbox" 的文本框。我不想在文本框中编辑数据并单击“更新”按钮将更改保存回 SQLDatasource,而是想在用户跳出 Grade_Codetextbox 时将更新保存在文本框 textchange 上。这可能吗?如果是这样,有人可以帮我举个小例子吗?先感谢您!
<EditItemTemplate>
<span style="">ID:
<asp:Label ID="IDLabel1" runat="server" Text='<%# Eval("ID") %>' />
<br />
Class_ID:
<asp:TextBox ID="Class_IDTextBox" runat="server" Text='<%# Bind("Class_ID") %>' />
<br />
Assignment_ID:
<asp:TextBox ID="Assignment_IDTextBox" runat="server" Text='<%# Bind("Assignment_ID") %>' />
<br />
Student_ID:
<asp:TextBox ID="Student_IDTextBox" runat="server" Text='<%# Bind("Student_ID") %>' />
<br />
Grade_Code:
<asp:TextBox ID="Grade_CodeTextBox" runat="server" AutoPostBack="True" Text='<%# Bind("Grade_Code") %>' />
<br />
Comment:
<asp:TextBox ID="CommentTextBox" runat="server" Text='<%# Bind("Comment") %>' />
<br />
<asp:CheckBox ID="ExemptCheckBox" runat="server" Checked='<%# Bind("Exempt") %>' Text="Exempt" />
<br />
<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="Update" />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Cancel" />
<br />
<br />
</span>
</EditItemTemplate>
是的,可以按照您在问题中提到的进行操作。
要实现您的要求,您需要添加如下代码。
- 订阅
TextChanged
文本框的服务器端事件。标记应如下所示。请注意我在标记中包含的 OnTextChanged
属性。
TextChanged 事件的标记
<asp:TextBox ID="Grade_CodeTextBox" runat="server" AutoPostBack="True"
Text='<%# Bind("Grade_Code") %>' OnTextChanged="Grade_CodeTextBox_TextChanged" />
- 为上面步骤订阅的服务端事件编写代码。
VB.Net
中的服务器端代码
Protected Sub Grade_CodeTextBox_TextChanged(ByVal sender As Object, ByVal e As EventArgs)
'Write your code here when text changes in this textbox
'For example, you could save textbox text in database
End Sub
我有一个表单视图和一个列表视图,它们在编辑模板中都有一个名为 "Grade_CodeTextbox" 的文本框。我不想在文本框中编辑数据并单击“更新”按钮将更改保存回 SQLDatasource,而是想在用户跳出 Grade_Codetextbox 时将更新保存在文本框 textchange 上。这可能吗?如果是这样,有人可以帮我举个小例子吗?先感谢您!
<EditItemTemplate>
<span style="">ID:
<asp:Label ID="IDLabel1" runat="server" Text='<%# Eval("ID") %>' />
<br />
Class_ID:
<asp:TextBox ID="Class_IDTextBox" runat="server" Text='<%# Bind("Class_ID") %>' />
<br />
Assignment_ID:
<asp:TextBox ID="Assignment_IDTextBox" runat="server" Text='<%# Bind("Assignment_ID") %>' />
<br />
Student_ID:
<asp:TextBox ID="Student_IDTextBox" runat="server" Text='<%# Bind("Student_ID") %>' />
<br />
Grade_Code:
<asp:TextBox ID="Grade_CodeTextBox" runat="server" AutoPostBack="True" Text='<%# Bind("Grade_Code") %>' />
<br />
Comment:
<asp:TextBox ID="CommentTextBox" runat="server" Text='<%# Bind("Comment") %>' />
<br />
<asp:CheckBox ID="ExemptCheckBox" runat="server" Checked='<%# Bind("Exempt") %>' Text="Exempt" />
<br />
<asp:Button ID="UpdateButton" runat="server" CommandName="Update" Text="Update" />
<asp:Button ID="CancelButton" runat="server" CommandName="Cancel" Text="Cancel" />
<br />
<br />
</span>
</EditItemTemplate>
是的,可以按照您在问题中提到的进行操作。
要实现您的要求,您需要添加如下代码。
- 订阅
TextChanged
文本框的服务器端事件。标记应如下所示。请注意我在标记中包含的OnTextChanged
属性。
TextChanged 事件的标记
<asp:TextBox ID="Grade_CodeTextBox" runat="server" AutoPostBack="True"
Text='<%# Bind("Grade_Code") %>' OnTextChanged="Grade_CodeTextBox_TextChanged" />
- 为上面步骤订阅的服务端事件编写代码。
VB.Net
中的服务器端代码Protected Sub Grade_CodeTextBox_TextChanged(ByVal sender As Object, ByVal e As EventArgs)
'Write your code here when text changes in this textbox
'For example, you could save textbox text in database
End Sub