2014-01-06 60 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

相關問題