2014-11-26 6 views
-3

Итак, у меня есть функция, которая считывает значение ввода текста, и я просто хочу, чтобы значение console.log было таким, чтобы убедиться, что оно работает. Но console.log возвращает только пустую строку. Мои инструменты разработчика Chrome не показывают ошибок. Вот код:jQuery читает значение, но возвращает пустую строку

<body> 
    <input type="text" id="text-input" name="fname" placeholder="Last name"> 
    <button>Confirm</button> 
</body> 
<script> 
    (function() { 

     function searchFunction() { 
      var stringValue = $('#text-input').val(); 
      $('button').on('click', function() { 
       console.log(stringValue); 
      }); 
     } 

     searchFunction(); 

    })(); 
</script> 
+0

заполните входное значение и снова запустите – dandavis

ответ

4

Конечно, это ... вы установите значение stringValue во время выполнения - когда значение нет ничего, что вы никогда не повторно захватить его на событие щелчка:

function searchFunction() { 
    var stringValue = $('#text-input').val(); 

    $('button').on('click', function() { 
     stringValue = $('#text-input').val(); //RESET THE VARIABLE TO THE CURRENT VALUE 
     console.log(stringValue); 
    }); 
} 

searchFunction(); 
Смежные вопросы