2014-01-06 56 views
-1

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

我试了下面的代码,它不工作。

这里是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> 
+1

您是否包含jQuery? – adeneo

+0

你可以创建一个小提琴吗? –

+0

是的,JQuery链接存储在〜/ Site.master中。我在上面编辑它。 – StudentIT

回答

0

由于ID是不一样的你有什么感谢.NET重命名它们。

你需要做的你做内同样的事情<%=tbAdd_Powner.ClientID%>'

又名:

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

其他选项是使用一类,部分选择,或者静态选项,在.NET代码。

+1

另一种选择是在文本框上设置ClientIDMode =“Static”。 –

0

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

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

我不知道什么样的价值观有ClientID,但是你可能需要#选择通过ID选择元素。

看看哪个是the difference between input and change

+0

我试过这个例子,它从不开火,因为我在tbadd_Powner函数中添加了警报,并且它从不警告。我使用$('#tbAdd_Powner')。on('input',function(){alert(“It Changed!”); $('#txtPass')。val($('#tbAdd_Powner')。 val();' – StudentIT

+0

@StudentIT'txtPass.ClientID'有什么值?页面中是否有错误?也许元素不存在 –

+0

'txtPass'的值是空的。 – StudentIT

相关问题