簡體   English   中英

根據在另一個文本框中輸入的文本在文本框中顯示文本

[英]Display Text in text box according to text entered in another text box

我正在用 asp.net 編寫一個 Web 應用程序。 我有兩個文本框,一個字段用於 txtEmployeeID,另一個字段用於 txtEmployeeName。 我在 Page_Load 事件中將 EmployeeName 文本框設置為只讀。 在我的程序中,我已經連接到我的數據庫並設置了我的存儲過程。 我現在想要的是當我在我的 EmployeeID 文本框中輸入一個 ID 時,相應的 EmployeeName 文本框應該顯示在該文本框中的員工姓名中。

例如。 在我的數據庫中,我有

employeeID: 000123 
employeeName: Jimmy

如果我在我的 txtEmployeeID 中輸入 000123,那么名字 Jimmy 將顯示在 txtEmployeeName 中。

我正在考慮使用 JavaScript 來實現這一點。 這就是我的想法,但它所做的只是復制一個文本框中的文本並在另一個文本框中顯示相同的文本。

     function Text() {
        var txt1 = document.getElementById('<%= txtEmployeeID.ClientID %>').value;
        document.getElementById('<%= txtEmployeeName.ClientID %>').value = txt1;

     }

HTML代碼:

<asp:TemplateField HeaderText="Employee ID">
       <EditItemTemplate>
              <asp:TextBox ID="txtEmployeeID" runat="server" Text='<%#Bind("Employee_ID") %>'
                Width="90px"></asp:TextBox>
       </EditItemTemplate>
       <ItemTemplate>
            <asp:Label ID="lblEmployeeName" runat="server" CssClass="GridInput" Text='<%#Bind("Employee_Name") %>'
                 Width="90px"></asp:Label>
        </ItemTemplate>
</asp:TemplateField>

如果你想使用 OnTextChange 事件,你可以這樣做;

<asp:UpdatePanel ID="udpEmployee" runat="server">
    <ContentTemplate>
        <asp:TextBox ID="txtEmployeeID" runat="server" AutoPostBack="true" OnTextChanged="txtEmployeeID_TextChanged"></asp:TextBox>
        <asp:TextBox ID="txtEmployeeName" runat="server" ReadOnly="true"></asp:TextBox>
    </ContentTemplate>
</asp:UpdatePanel>

在后面的代碼中;

protected void txtEmployeeID_TextChanged(object sender, EventArgs e)
    {
        //get employee name from DB
        string employeeName = GetEmployeeName(txtEmployeeID.Text);

        //set employee name on txtEmployeeName
        txtEmployeeName.Text = employeeName;
    }

我不確定您是如何連接到數據庫的,因此無法提供獲取價值的示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM