0

次の表があります.1行2列、1列にはテキストフィールドがあり、もう1列には単純なボタンがあります. .

 <table id="tabla_busqueda">  
 <tr>
     <td><input type="text" value="2"></td>   //This text field is disabled
     <td><button class="editar_campo">Click Me</button></td>
 </tr>
 </table

私は以下を持っています:

 $('body').on('click', '#tabla_busqueda .editar_campo', function(){

    $(this).prev('input[type=text]').removeAttr('disabled');

});

しかし、それは機能していません

なぜアイデアはありますか?

前もって感謝します

4

1 に答える 1

2

要素は でラップされてtdいるため、さらにトラバースして prop() を使用する必要があります。

$('body').on('click', '.editar_campo', function(){
    $(this).closest('td')
           .prev('td')
           .find('input[type="text"]')
           .prop('disabled', false);
});
于 2013-03-22T20:48:43.027 に答える