JQuery函数没有启用我禁用的提交按钮吗?

$(document).ready(function() {
      if ($("#lawfulBasis").prop("checked")) {
         $("#submitBtn").prop('disabled', false);   
       alert('Button Clicked');           
      };    
    });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<html>

<head>

</head>
<body>
<input id="lawfulBasis" type="radio" value="3" /> I give consent for you to store my data for the purposes of marketing, to contact me about products and services via email and telephone*
<p>
<input id="submitBtn" type="submit" value="Submit" disabled/>
</p>

</body>

</html>

推荐答案

这个问题是因为您只读取了Docent.Ready处理程序中单选控件的状态,即.当页面加载时,而不是当用户更改其状态时.

要解决此问题,请将change事件处理程序附加到单选按钮,并根据该事件处理程序设置按钮的disabled状态.

最后,请注意,您应该对此使用复选框,而不是无线电.原因是,一旦第一次 Select 该广播,就不能取消 Select .

jQuery($ => {
  $("#lawfulBasis").on('change', e => {
    $("#submitBtn").prop('disabled', !e.target.checked);
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<label>
  <input id="lawfulBasis" type="checkbox" value="3" /> 
  I give consent for you to store my data for the purposes of marketing, to contact me about products and services via email and telephone*
</label>
<p>
  <input id="submitBtn" type="submit" value="Submit" disabled/>
</p>

Javascript相关问答推荐

在拖放时阻止文件打开

如何添加绘图条形图图例单击角形事件

如何强制Sphinx中的自定义js/css文件始终加载更改而不缓存?

JS:XML insertBefore插入元素

禁用.js文件扩展名并从目录导入隐式根index.js时,找不到NodeJS导入模块

在css中放置所需 colored颜色 以填充图像的透明区域

如何使用基于promise (非事件emits 器)的方法来传输数据?

如何防止ionic 输入中的特殊字符.?

如何在Press上重新启动EXPO-AV视频?

postman 预请求中的hmac/sha256内标识-从js示例转换

如果对象中的字段等于某个值,则从数组列表中删除对象

谷歌饼图3D切片

为什么这个最小Angular 的Licial.dev设置不起作用?

MUI-TABLE:MUI表组件中交替行的不同 colored颜色 不起作用

在Reaction Native中,ScrolltoIndex在结束时不一致地返回到索引0

FiRestore按字段的提取顺序

如何在点击2秒后用JavaScript动态改变按钮上的图标?

如何处理街机物理中的碰撞结束

在每次迭代中,JavaScript for循环会重新声明变量吗?

当你点击数组时,如何在相应的元素中输出?