Javascript 选中复选框时语义ui禁用输入字段

Javascript 选中复选框时语义ui禁用输入字段,javascript,jquery,html,jquery-ui,checkbox,Javascript,Jquery,Html,Jquery Ui,Checkbox,我有一个切换复选框和两个输入字段。我想要实现的是在复选框未选中时禁用输入字段,反之亦然。这是我的密码 <div class="inline fields"> <div class="four wide field"> <div class="ui toggle checkbox"> <input id="a4" name="a4" tabindex="0" class="hidden" type="checkbox">

我有一个切换复选框和两个输入字段。我想要实现的是在复选框未选中时禁用输入字段,反之亦然。这是我的密码

<div class="inline fields">
  <div class="four wide field">
    <div class="ui toggle checkbox">
      <input id="a4" name="a4" tabindex="0" class="hidden" type="checkbox">
      <label>A4</label>
    </div>
  </div>
  <div class="six wide field">
    <label>Grayscale</label>
    <div class="ui right labeled input">
      <div class="ui label">Php</div>
      <input name="gray" value="1.00" placeholder="0.00" type="text">
      <div class="ui basic label">/page</div>
    </div>
  </div>
  <div class="six wide field">
    <label>Colored</label>
    <div class="ui right labeled input">
      <div class="ui label">Php</div>
      <input name="colored" value="1.00" placeholder="0.00" type="text">
      <div class="ui basic label">/page</div>
    </div>
  </div>
</div>

我研究过使用复选框的行为,如附加事件等,或者使用回调,但我不知道如何正确使用它们。但是我认为
.next()
不适合我的问题。我尝试过实验和研究,但似乎找不到解决方案。

通过您提供的链接,我想出了这个解决方案

$('#a4')。更改(函数(){
$('input[name=gray]').attr('disabled',!this.checked);
$('input[name=colored]').attr('disabled',!this.checked);
});

A4
灰度
Php
/页面
有色的
Php
/页面

使用带有参数“change”的
on
函数将事件侦听器添加到复选框更改中,然后在回调部分中使用名为“gray”的输入选择器,以便将
disabled
属性设置为复选框的选中状态的相反

如果要对包含许多项的表单中的所有复选框执行此操作,只要它们遵循相同的基本模板设计,就可以一起使用
parent()
find()
来查找特定父元素中特定类型的输入元素

$(“输入[type='checkbox'])。在(“更改”,函数()上){
$(this.parent().parent().parent().find(“input[type='text']”).prop(“disabled”、!this.checked);
})

A4
灰度
Php
/页面
有色的
Php
/页面
补体第四成份
灰度
Php
/页面
有色的
Php
/页面
有色的
Php
/页面
有色的
Php
/页面
B4
灰度
Php
/页面
有色的
Php
/页面

首先应禁用输入。然后在选中该框时启用

$('#a4')。更改(函数(){
$('#gray').attr('disabled',!this.checked);
$('彩色').attr('禁用',!this.checked);
});

A4
灰度
Php
/页面
有色的
Php
/页面

我运行了您的代码片段,输入在第一个实例中起作用,即使复选框未选中。
$('.ui.checkbox').checkbox();