2014-09-29 31 views
-1

下面的代碼是爲了檢測輸入法用戶焦點的名稱,問題是它警告所有文本框的名稱相同。顯示不正確的文本框標題

var huntedTextBox; 
    //focus in any textfield to get its name into the vairable. 
    $("input").focus(function() { 

     huntedTextBox = $("input").attr('name'); 
     alert(huntedTextBox); 

    }); 

這是代碼的Fiddle

謝謝。

+3

試試也許$(this).attr('name'); – cyan 2014-09-29 14:48:08

+0

因爲您不在當前上下文中 – Tushar 2014-09-29 14:50:24

+1

您正在檢查第一個輸入字段並將第一個輸入名稱值添加到huntedTextBox。它應該在你關注的輸入上huntedTextBox = $(this).attr('name'); – 2014-09-29 14:50:33

回答

4

只是做了搜索$('input')將文檔中返回所有<input>秒。然後,執行.attr()將獲得第一個屬性。

要獲得被點擊的<input>的屬性,使用$(this).attr('name');

0

huntedTextBox = $(this).attr('name');

+1

需要說明... – epascarello 2014-09-29 14:49:10

1

您需要使用this選擇多數民衆贊成集中在特定的文本框... 這裏有一個片段:

var huntedTextBox; 
 
//focus in any textfield to get its name into the vairable. 
 
$("input").focus(function() { 
 

 
    huntedTextBox = $(this).attr('name'); 
 
    alert(huntedTextBox); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<input type="text" name="textBox" /> 
 
<input type="text" name="Bader" />