2012-05-09 7 views
0

隣のアイコンをクリックすると特定のテキストボックスにしかアクセスできません。私は$ thisを使う必要があることを知っていますが、新しいことはできません。 ヘルプありがとうございます。 :)隣のアイコンをクリックすると、特定のテキストボックスのみにアクセスできます

JS:

jQuery(document).ready(function($) { 
    $('#plus').click(function(event) { 
     if($('.abc').val() == ''){ 
      $('.abc').val(10); 
     }else{ 
      $inc = parseInt($('.abc').val()) + 10; 
      $('.abc').val($inc); 
     } 
    }); 
}); 

HTML:ご希望のテキストボックスを持つことができターゲットで

<form class="chkform" id="chkform" name="chkform" method=post action=""> 
<input type="text" class="abc" id="abc" name="abc" value=""> 
<img src="plus.png" id="plus" name="plus" class="plus" > 
<br><br> 
<input type="submit" value="submit" name="submit" > 
</form> 

<form class="chkform" id="chkform" name="chkform" method=post action=""> 
<input type="text" class="abc" id="abc" name="abc" value=""> 
<img src="plus.png" id="plus" name="plus" class="plus" ><img src="minus.png" id="minus" name="minus" class="minus"> 
<br><br> 
<input type="submit" value="submit" name="submit" > 
</form> 
+1

まずコードをフォーマットしてください。 – Raghav

+0

ご迷惑をおかけして申し訳ありません。 –

+0

ここでは、#plusをクリックすると、そのテキストボックスが増分され、残りの部分は増えません。 –

答えて

1

あなたのフォームはあまりコーディングされていませんが、あなたはいくつかのIDが重複することはできません。

私は.plusを探すために機能を変更したのだが、今、その前にした入力フィールドを取得し、代わりに両方の上のアクションを実行します。

jQuery(document).ready(function($) { 
    $('.plus').click(function(event) { 
     var textArea = $(this).prev('input[type="text"]'); 
     if(textArea.val() == ''){ 
      textArea.val(10); 
     }else{ 
      $inc = parseInt(textArea.val()) + 10; 
      textArea.val($inc); 
     } 
    }); 
});​ 

それはここで働いてください:http://jsfiddle.net/cchana/wQc8U/

+0

ありがとう@cchana、それは私が欲しかったのと同じ働きました。 :) –

0
$(function() { 
    $('<yourselctor>').click(function(e) { 
     var parent = $(this).closest('<parent container selector>'); 
     var target = parent.find('<your desired textbox selector>'); 
    }); 
}); 

関連する問題