【问题标题】:jQuery : get values of text field when typingjQuery:输入时获取文本字段的值
【发布时间】:2018-02-06 23:17:25
【问题描述】:

我想在输入时获取文本字段值。

<input type="text" name="noofppl">

我想在输入时获取它的值,所以如果有人输入的数字少于 20,我会提醒允许的最小数字是 20。

请帮帮我。

这是我尝试过的:

$( "#people" ).focusout(function() {
  if($(this).val()<20){
    alert("Minimum number of people should be  20"); 
  }
});

【问题讨论】:

标签: javascript jquery input


【解决方案1】:

给你一个解决方案

$('input[name="noofppl"]').keyup(function(){
  console.log($(this).val());
});
 
$('input[name="noofppl"]').focusout(function(){
  if($(this).val().length < 20){
    alert("Minimum character is 20!!!");
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="noofppl">

我用过jQuery keyup & focusout 方法。

keyup 用于在键入时获取连续值。

focousout 用于检查字符数。

参考文档: https://api.jquery.com/keyup/

希望这会对你有所帮助。

【讨论】:

    【解决方案2】:

    见下面的例子:

    $("#txt").keyup(function(event) {
      text = $(this).val();
      $("div").text(text);
    });
    $('#txt').focusout(function(){
      if($(this).val().length < 20){
      	alert(" Minimum 20 Words required...!! ");
    	}
    })
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <input type="text" name="noofppl" id="txt">
    <div>
    
    </div>

    【讨论】:

    • OP 要求的最小字符验证在哪里?
    【解决方案3】:

    您是否正在寻找类似的东西?在您的输入后面添加一个标签以显示文本并为您的输入字段提供一个 ID 'noofppl'。前段时间制作了这段代码来限制我的文本区域。

    var textarea = document.getElementById('noofppl');
    
    textarea.on("keypress", function() {
                  var char_label = document.getElementById('charcount_text');
    
                  var count = textarea.value.length;
                  var max = 20;
    
                  var remaining = max - count;
                  if (remaining <= 0) {
                    char_label.innerHTML = '20 character limit reached.';
                  } else {
                    char_label.innerHTML = remaining +"/20 left";
                  }
                });
    

    【讨论】:

      【解决方案4】:

      请检查:

      <input type="text" name="noofppl">
      $('input').keyup(function(){var yourvalue = $(this).val(); })
      

      这应该适合你

      【讨论】:

      • OP 要求的最小字符验证在哪里?
      【解决方案5】:

      我会使用 input 事件侦听器或类似的东西,这里是如何实现它的快速示例:jsbin

      const $input = $('#input');
      let t;
      $input.on('input', (el) => {
        clearTimeout(t);
        t = setTimeout(() => {
          if ($input.val().length < 20) {
            alert('shorter than 20 characters');      
          } else {
            alert('longer or equal than 20 characters');
          }
        }, 400);
      })
      

      更多:MDN input reference

      【讨论】:

        【解决方案6】:

        $('#myInput').on('keyup', function() {
          console.log($('#myInput')[0].value.length);
        });
        &lt;input id="myInput" type="text" name="noofppl"&gt;

        【讨论】:

        • OP 要求的最小字符验证在哪里?
        【解决方案7】:

        使用 jQuery 功能键。每次验证时获取值。每次keyup时都显示消息你必须使用keyup evet。

        【讨论】:

        • 如果您不提供代码,或者至少不提供示例代码,这作为答案没有多大用处。
        猜你喜欢
        • 2014-12-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-18
        • 2011-03-17
        • 1970-01-01
        • 2016-05-15
        相关资源
        最近更新 更多