复选框切换时禁用输入字段(JQuery)

koe*_*hts 1 javascript forms jquery

我有一个复选框列表,每个复选框都有一个输入字段.如果选中该复选框,则必须禁用输入字段.例:

Checkbox 1 - Input 1
Checkbox 2 - Input 2
Checkbox 3 - Input 3
Run Code Online (Sandbox Code Playgroud)

真正的代码:

<table id="food" width="580px">
    <tr>
        <th colspan="5">Eten</th>
        <tr>
            <td><input type="checkbox" name="checkbox_1_1" value="" /></td>
            <input type="hidden" name="todo_1_1" value="7" />
            <td>Braadworst</td>
            <td>7</td>
            <td><input type="text" name="item_1_1" size="4" value="" /></td>
            <td></td>
        </tr>
        <tr>
            <td><input type="checkbox" name="checkbox_1_2" value="" /></td>
            <input type="hidden" name="todo_1_2" value="5" />
            <td>Witte worst</td>
            <td>5</td>
            <td><input type="text" name="item_1_2" size="4" value="" /></td>
            <td></td>
        </tr>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

只能禁用具有相同编号的输入字段...

通过Google我发现:http://techchorus.net/disable-and-enable-input-elements-div-block-using-jquery

该示例工作正常,但有没有一种方法可以在不预先定义名称的情况下执行此操作?在我的情况下,不可能知道名称,因此在切换复选框时必须确定它们,不是吗?

有什么建议?

Rei*_*gel 6

如果你有这个"非常"简单的结构

<input type="checkbox" name="" /><input type="text" name="" />
<input type="checkbox" name="" /><input type="text" name="" />
<input type="checkbox" name="" /><input type="text" name="" />
<input type="checkbox" name="" /><input type="text" name="" />
<input type="checkbox" name="" /><input type="text" name="" />?
Run Code Online (Sandbox Code Playgroud)

您可以

$(':checkbox').change(function(){
  $(this).next().attr('disabled',!this.checked);
})?;
Run Code Online (Sandbox Code Playgroud)

这是一个演示

但后来我知道你没有那种"非常"简单的结构,请阅读以下内容并从上面得到想法......

  1. 穿越
  2. 选择

如果你能提供你的HTML结构,那就更好了......