【问题标题】:How to check if a field has been populated with data using a javascript function?如何使用 javascript 函数检查字段是否已填充数据?
【发布时间】:2014-04-25 13:23:15
【问题描述】:

请注意,我是 javascript 的初学者。我已经为我的问题搜索了所有可能的术语,但没有运气。我想知道是否存在可用于检查字段是否已使用另一个 javascript 函数填充数据的 javascript 函数。请不要使用库,因为我想了解 javascript 编程的基础知识。

编辑: 我只是想澄清一下我所处的场景。

我有 3 个输入字段。这些字段的值由另一个 javascript 函数自动分配。我想做的是,当这些字段具有其受尊重的值时,我想创建一个新的输入字段来计算 3 个字段的值的总和。

【问题讨论】:

  • 字段是什么意思?页面上的输入元素?

标签: javascript


【解决方案1】:

由于您是新手,请也尝试使用 Javascript 代码编写整个 HTML 代码。

<!DOCTYPE html>
<html>
<head>
<script>
function copyText()
{
var TextValue = document.getElementById("field1").value
if(TextValue !=''){
alert(TextValue);
}
alert();
}
</script>
</head>
<body>

 <input type="text" id="field1" value="Hello World!"><br>

<button onclick="copyText()">Copy Text</button>

</body>
</html>

希望这行得通。

【讨论】:

    【解决方案2】:

    希望对你有帮助

    //Html Code
    <input type="text" value="sdsd" onChange="checkValue(this.value)">
    
    
    //Java Script Code
    function checkValue(value){
        if((value).trim()!==""){
           alert('return true');   
        }
        else{
            alert('return false');   
        }
    }
    

    【讨论】:

      【解决方案3】:
      //HTML line:
      
      
      <input type="text" id="txtAddress" />
      
              //JS code:
      
      
      function setValue() {
              //first we set value in text field:
                  document.getElementById('txtAddress').value = 'new value';
                  TestFunction();
              }
      
      
      
              function TestFunction() {
              //second we will get value from this filed and check wether it contains data or not:
                  var address = document.getElementById('txtAddress').value;
                  if (address != "") {
                      alert("Yes, field contains address");
                  }
                  else {
                      alert("Empty field, there is no address");
                  }
              }
      

      【讨论】:

      • 请注意,该字段是动态创建的,分配给它的值是由javascript函数动态分配的。
      • 首先你需要给这个字段赋值。例如$("#txtAddress").val("嗨,这是我的地址");然后您将检查该字段是否包含我上述函数中的数据。谢谢。
      • 请查看编辑以发布并让我知道是否可以澄清事情。
      【解决方案4】:

      我不确定你想达到什么目的。

      如果您想检查字段的输入是否使用 Javascript:除非您的 Javascript 输入函数将此类信息存储在某个位置(例如,将特定类添加到修改后的对象),否则无法做到这一点。然后您可以继续以下操作:

      如果您想检查字段中是否有任何值,那么您可以使用onchange(更改时触发,您可以将对象传递给函数并获取附加到它的每个属性 - 值、类等)。

      示例:

      function changeValue( object )
      {
          object.value = "new value";
          object.classList.add("modified");
      }
      
      function isChanged( object )
      {
          if( object.classList.contains("modified") )
              alert("I'm modified by JS!");
      }
      
      <input type="text" id="first" onchange="isChanged(this)">
      

      自从我写 JS 以来已经有一段时间了,但这应该可以工作。

      编辑:现在我只记得 onchange 触发器,如果​​元素是由用户编辑的,则使onchange 检测毫无价值。好吧,您可以将 set interval 与以下功能一起使用:

      function getModified() {
          // somehow process with
          // document.getElementsByClassName("modified"); 
      } 
      setInterval( getModified(), 3000 ); // get JS modified elements every 3s
      

      【讨论】:

        【解决方案5】:

        假设这是您的 html 字段(例如文本输入):

        <input type="text" id="txtName" />
        

        为了通过 javascript 获得它的价值,请使用 document.getElementById('txtName').value - 例如:

        function alert_value() {
            var value = document.getElementById('txtName').value;
            alert(value);
        }
        

        希望有帮助。

        编辑:

        如果此文本字段是动态添加的,我建议包括 jQuery 并设置以下脚本:

        $(function(){
            $(document).on('keyup', '#txtName', function(){ alert($(this).val()) });
        });
        

        【讨论】:

        • 请注意该字段是动态生成的。我最初想要的是如果这个输入字段是动态创建的,我想附加一个触发器(如 onchange),它将检查这个字段是否已经使用 javascript 填充了一个值。
        • 包含 jQuery 并使用:$(document).on('keyup', '#txtName', function(){ alert($(this).val()) });
        猜你喜欢
        • 2017-03-17
        • 1970-01-01
        • 2014-07-16
        • 1970-01-01
        • 2020-05-26
        • 2018-01-29
        • 1970-01-01
        • 2017-11-22
        • 2016-11-03
        相关资源
        最近更新 更多