Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果其他控件没有值,如何使复选框保持禁用状态;如果控件在angular8中有值,如何使复选框保持启用状态_Javascript_Angular_Angular Reactive Forms - Fatal编程技术网

Javascript 如果其他控件没有值,如何使复选框保持禁用状态;如果控件在angular8中有值,如何使复选框保持启用状态

Javascript 如果其他控件没有值,如何使复选框保持禁用状态;如果控件在angular8中有值,如何使复选框保持启用状态,javascript,angular,angular-reactive-forms,Javascript,Angular,Angular Reactive Forms,我有一个复选框fiels,在这里,如果另一个控件有值,我想启用复选框。 这里我有两个控制金额和收到的更新。如果update Received控件中有值,则必须允许用户在“金额”字段中签入/签出。 如果请求更新的控件为空/null,则“金额”复选框必须保持禁用状态,并且不应允许用户签入/签出 演示: TS: HTML: 为了查看html中的值是真是假,我尝试检查值{{disableUpdate}}。它会相应地给出真值或假值,但即使我得到真值,我也无法签入/签出。我稍微调整了一下,但我做到了。您需

我有一个复选框fiels,在这里,如果另一个控件有值,我想启用复选框。 这里我有两个控制金额和收到的更新。如果update Received控件中有值,则必须允许用户在“金额”字段中签入/签出。 如果请求更新的控件为空/null,则“金额”复选框必须保持禁用状态,并且不应允许用户签入/签出

演示:

TS:

HTML:


为了查看html中的值是真是假,我尝试检查值{{disableUpdate}}。它会相应地给出真值或假值,但即使我得到真值,我也无法签入/签出。

我稍微调整了一下,但我做到了。您需要setAttribute和removeAttribute。 我喜欢避免if块,我更喜欢三元运算符

typing(event){
    let checkBox = document.getElementById('noNewBusiness')
    event.target.value == '' ? checkBox.setAttribute('disabled', 'true') : checkBox.removeAttribute('disabled')
  }

你是否解决了我的建议?我无法打开此链接,请你发布完整答案或再次提供链接?在这里,如果updateReceived字段中默认有值,我希望复选框被启用,而不是通过键入。你能编辑答案并发送吗?也许你的意思是,如果文本框中有文本,你希望复选框被选中?如果您只想启用复选框,这是启用和/或禁用复选框的方法,使用textboxI提供的更改事件来修复URL。我使用了您的解决方案并尝试了修复,您能验证一次吗?
<form  [formGroup]="eoInfoForm">
  <div class="row">
    <div class="col">
       <div class="custom-control custom-switch">
         {{disableUpdate()}}
                <input type="checkbox" class="custom-control-input" id="noNewBusiness"
                    formControlName="amount"  disabled="disableUpdate()">
                <label class="custom-control-label" for="noNewBusiness">Update Received</label>
            </div>
    </div>
  </div>
</form>
typing(event){
    let checkBox = document.getElementById('noNewBusiness')
    event.target.value == '' ? checkBox.setAttribute('disabled', 'true') : checkBox.removeAttribute('disabled')
  }