javascript - 一旦用户开始在文本字段中输入,您如何检查复选框?如果 javascript/html 中的文本字段为空,也取消选中复选框

标签 javascript html grails

所以我有一些代码可以在用户开始在文本字段中输入时检查复选框,但如果用户决定删除他或她开始输入的所有内容并将文本字段留空,我无法取消选中它。有什么帮助吗?谢谢!

<html>
<head> 
 <script type="text/javascript">
    function checkvalue(val)
    {
        if(val.value == '')
            document.getElementById('productCB').checked="false"
        else
            document.getElementById('productCB').checked="true"
    }
 </script>
</head>
<body>
  <g:checkBox id="productCB" value="searchProduct" /> Product:
  <g:textField id="productID" placeholder="Enter product here..." onkeypress="checkvalue(this)" />
</body>
</html>

最佳答案

falsetrue 是 bool 值,而不是字符串,因此仅检查与零比较的值长度将给出相同的结果,一个 bool 值。

您还应该为此使用 onkeyup 事件:

<html>
<head> 
 <script type="text/javascript">
    function checkvalue(val) {
        document.getElementById('productCB').checked = val.value.trim().length > 0;
    }
 </script>
</head>
<body>
  <input type="checkBox" id="productCB" value="searchProduct" /> Product:
  <input type="text" id="productID" placeholder="Enter product here..." onkeyup="checkvalue(this)" />
</body>
</html>

FIDDLE

关于javascript - 一旦用户开始在文本字段中输入,您如何检查复选框?如果 javascript/html 中的文本字段为空,也取消选中复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17934953/

相关文章:

javascript - 如何对典型的 JSON 使用 ng-repeat?

javascript - 在 React App 中阻止导航

javascript - 如何在单页面应用程序(SPA)的特定页面中隐藏对讲聊天小部件?

php - 使用php从html表单多次插入Mysql

javascript - 使用javascript的文本区域中光标的当前x,y坐标

java - Grails 应用第二天拒绝连接

javascript - ExtJS:全局函数在页面加载之前执行。怎么拖延?

html - 使用颜色设置 alpha 时字母重叠

grails3静态图片请求获取404

javascript - 如何在grails gsp中添加带有src和内容的脚本?