javascript - 动态检测文本区域是否为空

标签 javascript html

我正在尝试动态检测文本区域是否为空。我这样做是为了仅当在文本区域中输入文本时才显示发送按钮。

我尝试了下面的代码,但它不起作用。

var text = document.getElementById("text").value;

if (text !== ''){
    alert("works");
    document.getElementById("sendicon1").style.display = "none";         
    document.getElementById("sendicon2").style.display = "inline";         
}
else{
    alert("not working");
    document.getElementById("sendicon2").style.display = "none";         
    document.getElementById("sendicon1").style.display = "inline";
}

最佳答案

您是否将该代码放入 onkeyup 或 onchange 函数中?你可以这样做:

window.onload = function() { 
  var text = document.getElementById("text");
  var func = function() { 
    if (text.value !== '') {
      alert("works");
      document.getElementById("sendicon1").style.display = "none";         
      document.getElementById("sendicon2").style.display = "inline";         
    } else {
      alert("not working");
      document.getElementById("sendicon2").style.display = "none";         
      document.getElementById("sendicon1").style.display = "inline";       
    }
  }
  text.onkeyup = func;
  text.onchange = func;
}

您不需要同时使用 onkeyup 和 onchange,这取决于您何时寻找它来触发。 onchange 将在您将焦点移开(模糊)之后发生,而 onkeyup 将在在文本区域内按下每个键之后发生。

关于javascript - 动态检测文本区域是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32460928/

相关文章:

javascript - 如何对传递给 JavaScript 函数的匿名回调进行单元测试?

javascript - 为什么在这个简单的 jsfiddle 演示中不触发点击事件?

javascript - jQuery 字段选择

javascript - 如果脚本动态插入到 iframe 头部,则会出现错误的文档

javascript - HTML:表单 POST 选择返回选项文本

php - 每次访问时加载的启动画面

javascript - 在 Mobile Safari 中点击 <label>

javascript - 如何将 jQuery 功能与分组元素分组?

html - 我什么时候应该在 react 中使用 'className' 而不是 'class',反之亦然?

javascript - 单击时使用 javascript 添加内容