显示输入的长度

时间:2018-09-26 08:51:32

标签: javascript html

如果启用1中有输入(基本上重新启用它),我如何启用input2,我仍然是一个初学者,不知道这样做。

<form id="form1">
    <input type="text" id="text1" onkeyup="valid()">
    <input type="text" id="text2" disabled="disabled">
    <script language="javascript">
        function valid() {
            var firstTag = document.getElementById("text1").length;
            var min = 1;

            if (firstTag > min)
            //if the text entered is longer than 1 alert to screen
            {
                //enable the text2 tag  
            }

        }
        //once input from text1 is entered launch this function
    </script>
</form>

8 个答案:

答案 0 :(得分:0)

如果我正确理解了您的问题,您想启用第二个输入,只要第一个输入中有值?

然后使用dom更改该输入的禁用状态

if(firstTag > min)
//if the text entered is longer than 1 alert to screen
{
  //enable the text2 tag  
  document.getElementById("text2").disabled = false;
}

答案 1 :(得分:0)

请尝试以下代码:

var text1 = document.getElementById("text1");
text1.onchange = function () {
   if (this.value != "" || this.value.length > 0) {
      document.getElementById("text2").disabled = false;
   } else {
     document.getElementById("text2").disabled = true;
   }
}
<input type="text" id="text1">
<input type="text" id="text2" disabled="disabled">

答案 2 :(得分:0)

我认为您应该使用.value来获取值。然后,测试其.length。即firstTag应该是:

var firstTag = document.getElementById("text1").value.length;

而且,完整的功能应该是:

function valid() {
    var min = 1;
    var firstTag = document.getElementById("text1");
    var secondTag = document.getElementById("text2");

    if (firstTag.length > min) {
        secondTag.disabled = false
    } else {
        secondTag.disabled = true
    }
}

让我知道是否可行。

答案 3 :(得分:0)

首先,您必须将代码“ document.getElementById(” text1“)。length ”更正为“ document.getElementById(” text1“)。value.length >”。

第二,有两种方法可以删除禁用的属性。

1) jQuery -$('#text2')。prop('disabled',false);

2) JavaScript -document.getElementById(“ text2”)。disabled = false;

下面是使用javascript的示例

function valid() {
  var firstTag = document.getElementById("text1").value.length;
  var min = 1;

  if (firstTag > min) {
    document.getElementById("text2").disabled = false;
  }
  else
  {
    document.getElementById("text2").disabled = true;
  }
}
<input type="text" id="text1" onkeyup="valid()">
<input type="text" id="text2" disabled="disabled">

答案 4 :(得分:0)

您可以使用第二个元素的trustAsHtml属性。这是一个布尔型属性(是/否)。

还要注意,您需要使用.disabled来检索输入元素的文本。

演示:

.value
function valid() {
  var text = document.getElementById("text1").value;
  var minLength = 1;
  document.getElementById("text2").disabled = text.length < minLength;
}

valid(); // run it at least once on start

答案 5 :(得分:0)

我将像这样将@Korat代码事件更改为keyup:

var zlib = require('zlib');
app.get('/', function(req, res){
   res.setHeader('Content-Encoding', 'gzip')
   res.setHeader('Content-Type', 'text/plain')
   var text = "Hello World!";
   var buf = new Buffer(text, 'utf-8'); 
   zlib.gzip(buf, function(_, result) { 
      res.send(result); 
   });
});
app.listen(3001)

答案 6 :(得分:0)

尽管输出始终设置为null,但我尝试创建自己的示例,以便我可以对多个输入进行自动化,这是我不能从text1给出text2的ID吗?

<div id="content">
            <form id="form1">
            <input type="text" id="text1" onkeyup="valid(this.id,text2)">
            <input type="text" id="text2" disabled="disabled">


            <script language ="javascript">

                function valid(firstID,secondID){
                    var firstTag = document.getElementById(firstID).value.length;
                    var min = 0;

                    if(firstTag > min)
                    //if the text entered is longer than 1 alert to screen
                    {
                        document.getElementById(secondID).disabled = false;
                    }
                    if(firstTag == 0){
                        document.getElementById(secondID).disabled = true;
                       } 
                }
                //once input from text1 is entered launch this function 
            </script>

            </form>

答案 7 :(得分:0)

如果我正确理解您的意思,那么您要问的是,当第一个输入中输入的字符超过一个时,如何从第二个输入中删除disabled属性( enable )领域。

您可以使用oninput事件。每次将新字符添加到第一个输入字段时,这都会调用您的函数。然后,您只需要将第二个输入字段的disabled属性设置为false。

这是一个可行的示例。

Run this example at Repl.it

<!DOCTYPE html>
<html>
<body>

    <!-- Call enableInput2 on input event -->
    <input id="input1" oninput="enableInput2()">
    <input id="input2" disabled>

    <script>
    function enableInput2() {
        // get the text from the input1 field
        var input1 = document.getElementById("input1").value;
        if (input1.length > 1) {
            // enable input2 by setting disabled attribute to 'false'
            document.getElementById("input2").disabled = false;
        } else {
            // disable input2 once there is 1 or less characters in input1
            document.getElementById("input2").disabled = true;
        }
    }
    </script>
</body>
</html>

注意:更好的做法是使用addEventListener而不是将事件处理程序(例如onclickoninput等)直接放入HTML。