Jquery 使用表上的复选框更改值

Jquery 使用表上的复选框更改值,jquery,html,ajax,dom,Jquery,Html,Ajax,Dom,我有这个哈佛商学院代码: <table> <tr> <th>A</th> <th>B</th> </tr> {{#each data2}} <tr> <td> <input type='checkbox' id='nm_produk' class='product' name=

我有这个哈佛商学院代码:

<table>
  <tr>
    <th>A</th>
    <th>B</th>    
  </tr>
  {{#each data2}}
  <tr>
    <td>
      <input
      type='checkbox'
      id='nm_produk'
      class='product'
      name='data_{{no}}'
      value="{{no}}">
      <label>{{item}}</label>
    </td>
    <td>
      <input
      disabled type='text'
      placeholder='0'
      name='data_{{no}}'
      id='qtytbs'>
    </td>
  </tr>
  {{/each}}
</table>
当我选中该复选框时,同一行的输入元素被启用,我们可以在其上写入文本。 但当我取消选中复选框时,该值仍然存在,即最后一个值。 我希望在取消选中复选框元素时,在同一行的输入元素上获得空白值并禁用


如何实现这一点?

添加$next.val(“”);只有当复选框被禁用时,才能将其添加到代码中。您可能需要编写一个if条件来设置空值。

将JS代码更改为:

$(document).ready(function() {
    $("#nm_produk").change(function() {
        $next = $(this).closest('tr').find('[id=qtytbs]');
        $next.val("");
        $next.prop('disabled', !this.checked);   
    });
});

在HTML中是
id='qtytbs'>
,而在jquery中是
find('[id=qtytb]')此代码也可以使用,但我对如何使用它感到困惑,因为此代码没有配备我拥有的代码…总体上非常感谢…我在手机上,当我写此答案时:)
$(document).ready(function() {
    $("#nm_produk").change(function() {
        $next = $(this).closest('tr').find('[id=qtytbs]');
        $next.val("");
        $next.prop('disabled', !this.checked);   
    });
});