2013-03-17 47 views
1

我有我認爲必須是一個非常簡單的jQuery問題。如何在每個按鍵上做一些事情,而不僅僅是事件的第一步

當用戶在我正在使用的網站上創建帳戶時,他們創建的帳戶名稱被預先添加到網站地址,這是他們將來用於訪問其帳戶的地址。

例如http://useraccount.thewebsite.com

當用戶在註冊表單上的「創建帳戶名稱」字段中鍵入帳戶名稱時,我想創建一個工具提示,解釋這是什麼,並向他們顯示地址的外觀。

這裏是我到目前爲止的代碼:

$('input.account-name').keypress(function(){ 
    $("span.account-name-illustration").replaceWith($(this).val()); 
}); 

'input.account名' 是輸入字段。

「span.account名,說明」是這樣的:

<p>Your account address will be https://<span class="account-name-illustration">something</span>.thewebsite.com.</p> 

這部作品第一次按鍵,但後無來者。

所以我多一點揮舞后和身邊,我發現這一點:

http://docs.jquery.com/Events/keypress

其中一期工程在一定程度上。除了它只是不斷地添加每個按鍵,忽略在刪除或將光標放在現有的字符之間的實際輸入內容等。

所以現在我想知道,我真的想記錄每個按鍵..或者是否有一種方法可以在每次鍵入後獲取輸入的值?

非常感謝。

回答

2

由於您只是用文本替換spanspan.account-name-illustration選擇器在後續調用中不會找到任何內容。

您可以通過保留span使用text,而不是replaceWith解決這個問題:

$("span.account-name-illustration").text($(this).val()); 
+0

+1而只是澄清了OP - 似乎按鍵*是*在後續調用的工作,它只是*出現*因工作原因不工作@Emmett解釋 – 2013-03-17 17:03:34

+0

完美感覺,謝謝你們倆:) – 2013-03-17 17:32:54

相關問題