2012-03-09 14 views
0

入力の値を取得し、入力が「ぼかし」た後の位置を取得したいとします。入力リストの現在の位置を取得する

<span id="blah"> 
    <input type="text">a</input>   
    <input type="text">b</input>   
    <input type="text">c</input>   
    <input type="text">d</input> 
    ... 
</span> 

$('span input:text').live('blur', function(){ 

    var value = $(this).val(); 
} 

だから、もしそれらがcからぼやけたら、値 'c'と配置 '3'をリストに戻す必要があります。

HTMLを変更できないため、入力数が増加することがあります。

+0

''ではなく、入力が ' aと書かれている特別な理由はありますか?それは、これが答えを大きく変えてくれることです。 –

+0

使用しているjQueryのバージョンも指定できますか?バージョン1.7では少し変わった。 –

答えて

1

index()メソッドを使用して位置を取得します。それを取得する方法をお見せすることができ、しかし、「リスト」を定義するための質問には何もありません http://api.jquery.com/index/

ご入力のhtmlがあなたのボケ関数の内部で無効

<input type="text" value="b" /> 


$('span input:text').live('blur', function(){ 
    var position=$(this).index()+1;/* index is zero based*/ 
    var value = $(this).val(); 
}) 
+0

ug、数秒で私にそれを打つ:-) – Patches

0

で、あなたが行うことができます:

MyFunction($(this).val(), $(this).index()); 

ここで、MyFunctionはデータを渡す関数です。最初のパラメータはテキストボックスの値(例では「c」)で、2番目のパラメータは兄弟の相対的なインデックスです(あなたの例では "3"、むしろ "2" 0ベース)。

関連する問題