2017-01-12 10 views
0

У меня есть страница редактирования в приложении cakephp-3.0. Значения в текстовых полях загружаются из базы данных.Javascript для определения значения текста в текстовом поле

Я хочу поднять событие и показать alert, если значение в любом из текстовых полей изменяется от их текущего значения. Например, предположим, что значение равно "abc". Необходимо указать alert, если он изменен на "abcde". Значение alert не будет показано значение "abc".

В настоящее время я использую это, однако, это будет вызывать функцию я нажал на самом текстовом поле:

<input size="10" type="text" value="13-12-1899" onchange="checkChange()" style="border:1px solid #fff;"> 
+0

'Но это будет вызывать функцию я нажал на текстовое поле itself' не верны - это называется, когда вход теряет фокус. Таким образом, код, который у вас есть сейчас, должен работать точно так же, как вы описываете свои требования –

+0

где есть определение checkChange()? –

+0

У меня проблема 100%. Вы хотите получить предупреждение сразу после изменения ввода? Если да, то ваш код должен быть в порядке. Или у вас есть что-то вроде кнопки отправки, и вы хотите получить все предупреждения для каждого входа? – Alan

ответ

0

, если вы хотите, чтобы поймать изменения, как они происходят, а не когда вход теряет фокус, попробуйте это:

$("#checkme").on("input", function(){ 
 
    var myVal = $(this).val(); 
 
    console.log("changed to "+myVal+"!"); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" value="abc" id="checkme" >

0

HTML

<input size="10" type="text" value="13-12-1899" onchange="checkChange()" style="border:1px solid #fff;"> 

Javascript

<script type="text/javascript"> 
    function checkChange(e){ 
     var oldVal = e.getAttribute('value'); 
     var nwVal = e.value; 
     if(oldVal!=nwVal) 
      alert("the value \""+oldVal+"\" have been changed to \""+nwVal+"\""); 
    } 
</script> 

 Смежные вопросы

  • Нет связанных вопросов^_^