[研究]ASP.NET,WebForm,TextBox1值自動更新到TextBox2,用jQuery
2024-03-22
環境:Visual Studio 2022 + ASP.NET + WebForm + Web Application + C# + SQL Server 2019 + SQL Server Management Studio (SSMS) 19
********************************************************************************
Default2.aspx,注意,在 FormView1 中或不在,JavaScript 寫法有點不同
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default2.aspx.cs" Inherits="WebApplication1.Default2" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function () { $('#<%=FormView1.FindControl("TextBox1").ClientID%>').change(function () { var textBox1Value = $(this).val(); $('#<%=FormView1.FindControl("TextBox2").ClientID%>').val(textBox1Value); }); }); </script> <script type="text/javascript"> $(document).ready(function () { $('#<%=TextBox3.ClientID%>').change(function () { var textBox1Value = $(this).val(); $('#<%=TextBox4.ClientID%>').val(textBox1Value); }); }); </script> </head> <body> <form id="form1" runat="server"> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyDBConnectionString %>" SelectCommand="SELECT * FROM [MyTable]" UpdateCommand="UPDATE [MyTable] SET [Field1] = @Field1, [Field2] = @Field2 WHERE [SN] = @SN"> <UpdateParameters> <asp:Parameter Name="Field1" Type="String" /> <asp:Parameter Name="Field2" Type="String" /> <asp:Parameter Name="SN" Type="Int32" /> </UpdateParameters> </asp:SqlDataSource> <asp:FormView ID="FormView1" runat="server" DataSourceID="SqlDataSource1" DefaultMode="Edit" AllowPaging="True" DataKeyNames="SN"> <EditItemTemplate> SN:<asp:Label ID="SNLabel1" runat="server" Text='<%# Eval("SN") %>' /> <br /> Field1:<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Field1") %>' /> <br /> Field2:<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Field2") %>' Enabled="false" /> <br /> <asp:LinkButton ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update" Text="更新" /> <asp:LinkButton ID="UpdateCancelButton" runat="server" CausesValidation="False" CommandName="Cancel" Text="取消" /> </EditItemTemplate> </asp:FormView> <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br /> <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox> </form> </body> </html> |
********************************************************************************
如果是在 MasterPage 中,下面實際測試可用
Default5.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="Default5.aspx.cs" Inherits="WebApplication1.Default5" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function () { $('#<%=FormView1.FindControl("TextBox1").ClientID%>').change(function () { var textBox1Value = $(this).val(); $('#<%=FormView1.FindControl("TextBox2").ClientID%>').val(textBox1Value); }); }); </script> <script type="text/javascript"> $(document).ready(function () { $('#<%=TextBox3.ClientID%>').change(function () { var textBox1Value = $(this).val(); $('#<%=TextBox4.ClientID%>').val(textBox1Value); }); }); </script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyDBConnectionString %>" SelectCommand="SELECT * FROM [MyTable]" UpdateCommand="UPDATE [MyTable] SET [Field1] = @Field1, [Field2] = @Field2 WHERE [SN] = @SN"> <UpdateParameters> <asp:Parameter Name="Field1" Type="String" /> <asp:Parameter Name="Field2" Type="String" /> <asp:Parameter Name="SN" Type="Int32" /> </UpdateParameters> </asp:SqlDataSource> <asp:FormView ID="FormView1" runat="server" DataSourceID="SqlDataSource1" DefaultMode="Edit" AllowPaging="True" DataKeyNames="SN"> <EditItemTemplate> SN:<asp:Label ID="SNLabel1" runat="server" Text='<%# Eval("SN") %>' /> <br /> Field1:<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Field1") %>' /> <br /> Field2:<asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Field2") %>' Enabled="false" /> <br /> <asp:LinkButton ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update" Text="更新" /> <asp:LinkButton ID="UpdateCancelButton" runat="server" CausesValidation="False" CommandName="Cancel" Text="取消" /> </EditItemTemplate> </asp:FormView> <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br /> <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox> </asp:Content> |
(完)
相關
[研究]ASP.NET, WebForm, 為何下面連 TextBox 輸入框都看不到https://shaurong.blogspot.com/2024/03/aspnet-webform-textbox.html
[研究]ASP.NET,WebForm,TextBox1值自動更新到TextBox2,用OnTextChanged
https://shaurong.blogspot.com/2024/04/aspnetwebformtextbox1textbox2ontextchan.html
[研究]ASP.NET,WebForm,TextBox1值自動更新到TextBox2,用JavaScript
https://shaurong.blogspot.com/2024/04/aspnetwebformtextbox1textbox2javascript.html
[研究]ASP.NET,WebForm,TextBox1值自動更新到TextBox2,用jQuery
https://shaurong.blogspot.com/2024/03/aspnetwebformtextbox1textbox2jquery.html
沒有留言:
張貼留言