当指定了表单时,输入框禁用/启用框

时间:2014-05-30 09:16:25

标签: javascript html forms

我正在尝试通过复选框启用和禁用输入来获取表格。 当我意识到,<form>在表中没有工作时,我将form参数放在输入中,但现在禁用/启用不起作用(我的技能有点差)

我禁用/启用输入的复选框如下所示:

<td>
    <input type="checkbox" onclick="this.form.elements['bleh'].disabled = this.form.elements['bleh2'].disabled = !this.checked" />
    <input type="submit" value="Edytuj"/>
</td>

现在我的输入框是:

<td><input type="text" name="bleh" form="id7" value="default" disabled=disabled></td>
<td><input type="text" name="bleh2" form="id7" value="admin" disabled=disabled></td>

2 个答案:

答案 0 :(得分:2)

如果您为表单命名,则可以访问以下元素:

document.FORM_NAME.ELEMENT_NAME.disable

例如

document.id7.bleh.disabled

因此,您可以将您的onclick更改为

<input type="checkbox" onclick="document.id7.bleh.disabled = document.id7.bleh2.disabled = !this.checked" />

Example

Using form attribute to external form

答案 1 :(得分:0)

Demo Fiddle

  1. 表格

      

    <form action="#"> <table> <tr> <td> <input type="text" name="bleh" value="default" disabled="disabled" /> </td> <td> <input type="text" name="bleh2" value="admin" disabled="disabled" /> </td> <td> <input type="checkbox" onclick="this.form['bleh'].disabled = this.form['bleh2'].disabled = !this.checked" /> <input type="submit" value="Edytuj" /> </td> </tr> </table> </form>

  2. 在表单

    之外声明表单元素时
      

    <table> <tr> <td> <input type="text" name="bleh" form="id7" value="default" disabled="disabled" /> </td> <td> <input type="text" name="bleh2" form="id7" value="admin" disabled="disabled" /> </td> <td> <input type="checkbox" onclick="document.forms['id7']['bleh'].disabled = document.forms['id7']['bleh2'].disabled = !this.checked" /> <input type="submit" value="Edytuj" /> </td> </tr> </table> <form name="id7" id="id7" action="#"></form>