键盘输入后的抓取值

时间:2019-04-28 19:35:21

标签: javascript jquery

我试图使用input更新keyup字段的值,然后在随后单击单独的button元素时获取它的值。但是,当我单击按钮时,代码未显示更新的输入值。这是什么问题?

这是我的代码:

jQuery(document).ready(function(e) {

    var text_input = $('.promo-bottom .gform_wrapper form .gform_body #input_8_2');

    text_input.on('keyup', function(e) {
        var value = $(this).val();
        $(this).attr('value', value);
    });

    $(document).on('click', '.promo-bottom .gform_wrapper form .gform_body a', function(e) {
        e.preventDefault();

        var new_value = $('.promo-bottom .gform_wrapper form .gform_body #input_8_2').val();

        if (new_value != '') {
            $(this).css('display', 'none');
            $('.promo-bottom .gform_wrapper form .gform_footer #gform_submit_button_8, .promo-reveal').fadeIn('slow');
        }
    });
});

1 个答案:

答案 0 :(得分:1)

基本输入提取逻辑:

var input = $('#myInput');

$('#myButton').on('click', function() {
  console.log(input.val());
});

$('#myInput').on('keyup', function() {
  console.log($(this).val());
});
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.js"></script>

<input type="text" id="myInput">
<button id="myButton">Click me</button>

  1. 您不需要在keyup上设置输入的值
  2. 尝试映射按钮上的“ onClick”事件而不是整个文档
  3. 比较应该是'!=='而不是'!='