技術メモ

書いておぼえるブログ

入力フォームの値が以前のデータと同じだったら送信をキャンセルさせたい

状況  

何らかのデータを更新するためのフォームがあるとして、入力された値が以前と同じ状態で送信されたらリクエストをキャンセルさせたい。  

コード  

$('input[type="test"]').on('submit', function(e) {
  var prev_val = $('.prev_val');
  var new_val = $('.new_val');
   if ( prev_val == new_val ) {
     e.preventDefault();
     alert('同じ内容です。');  
  }
})

DEMO

codepen.io

雑感  

jQueryでテキストを取得する場合、pタグはtext()、inputタグはval()と使い分ける。間違えやすい。