【jQuery】テキストボックスが空白だった場合、Enterキーを押しても処理しない機能の実装

電脳備忘録

とあるサイトの検索部分、テキストボックスが空白でEnterキーを押すと検索を実行し全件表示してしまうという不具合を見つけてしまいました・・・。

<input class="searchinput" type="text" placeholder="Keyword" name="key">

これはさすがにまずいので、とりあえずの対応として空白の場合、Enterキーを押しても処理しない処理を実装しました。

$(function(){
//バリデーション
$('.searchinput').keypress( function ( e ) {
if ( e.which == 13 ) {
let error;
let value = $(this).val();
if(value == "")
{
error = true;
}
else if(!value.match(/[^\s\t]/))
{
error = true;
}
if(error)
{
//エラー時の処理
return false;
}
}
});
});

何かしら文字が入力されていれば検索が実行されるのでこれでよしとしましょう・・・。

広告

ブログの維持費に充てるでございます・・・。