2012-08-07 78 views
0

我有一些標記:如何基於類改變一個隱藏的價值有

<table> 
    <tbody> 
     <tr> 
      <td> 
       <input type="hidden" class="deleted" value="False" /> 
       <input type="button" class="rtButton" value="RT" /> 
      </td>        
     </tr> 
     <tr> 
      <td> 
       <input type="hidden" class="deleted" value="False" /> 
       <input type="button" class="rtButton" value="RT" /> 
      </td>        
     </tr> 
     <tr> 
      <td> 
       <input type="hidden" class="deleted" value="False" /> 
       <input type="button" class="rtButton" value="RT" /> 
      </td>        
     </tr> 
    </tbody> 
</table> 

什麼,我想發生時rtButton點擊在同一只隱藏輸入的值td更改爲true。

我試圖實現這一目標:

$(function(){ 

    $('.rtButton').click(function() { 
     $(this).closest('input.deleted').val("True"); 
     alert($(this).closest('input.deleted').val()) 
      }); 


}); 

然而,它似乎無法設置的值。

+2

你或許應該被應用名稱全部你的輸入字段(如果你是ver實際上是想發佈數據)。 – 2012-08-07 21:55:52

回答

2

您可以使用siblings()方法:

添加反正演示:http://jsfiddle.net/qZBkt/3/

$(function(){ 
    $('.rtButton').click(function() { 
     $(this).siblings('input.deleted').val("True"); 
    }); 
}); 

closest()獲取的選擇相匹配,在當前元素開始,通過DOM樹前進了第一個元素。

+0

根據最接近它應該工作的定義。 – AnonyMouse 2012-08-07 21:56:41

+1

@AnonyMouse否,最接近選擇最接近的父。 – undefined 2012-08-07 21:57:40

+0

確實爲此。我已經添加了演示,希望你對它很酷:P – 2012-08-07 21:58:03

1

或類似這樣的:工作演示http://jsfiddle.net/qZBkt/

希望這會養活你的事業! :)

代碼

$(function() { 

    $('.rtButton').click(function() { 
     $(this).parent().find('.deleted').val("True"); 
     alert($(this).parent().find('.deleted').val()); 
    }); 


});​