更改文本框时调用JQuery不起作用

时间:2014-01-06 19:27:55

标签: jquery asp.net

我希望textbox在文本/值更改时自动调用jQuery。一开始,只读所有者文本框为空。我只能选择名称,然后它会自动将名称粘贴到tbAdd_Powner文本框。粘贴后,我希望它自动调用jQuery从tbAdd_Powner文本框中获取值并将其传递给txtPass文本框。例如,我选择Joe然后它会在tbAdd_Powner textbox中粘贴Joe,然后调用jQuery将Joe传递给txtPass文本框。

我尝试了以下代码,但它无法正常工作。

这是jQuery和html示例,

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="testtest.aspx.cs" 
Inherits="testtest" EnableEventValidation="false" Async="true" MaintainScrollPositionOnPostback="true" %>



    <script language="javascript" type="text/javascript">
     $(function () {

    $('#tbAdd_Powner').on('input',function () {
    alert("It Changed!");
    $('#txtPass').val($('#tbAdd_Powner').val());
 });

});        </script>
    <asp:TextBox ID="tbAdd_Powner" runat="server" ClientIDMode="Static" Enabled="false"></asp:TextBox>

    <asp:TextBox ID="txtPass" runat="server" Width="163px"></asp:TextBox>

2 个答案:

答案 0 :(得分:0)

由于.NET重命名,因此ID与您所拥有的ID不同。

您需要使用<%=tbAdd_Powner.ClientID%>'

执行相同的操作

AKA:

$('#<%=tbAdd_Powner.ClientID%>').on(...

其他选项可以在.NET代码中使用类,部分选择器或静态选项。

答案 1 :(得分:0)

这听起来像你需要input。另外,不要将jQuery与纯JavaScript混合使用:

$(function () {
  $('#tbAdd_Powner').on('input', function () {
       $('#<%=txtPass.ClientID%>').val($('#<%=tbAdd_Powner.ClientID%>').val());
  });
});

我不知道ClientID有哪些值,但您可能需要#选择器来按ID选择元素。

查看哪个是the difference between input and change