読者です 読者をやめる 読者になる 読者になる

入力・ペーストした際に先頭・語尾の半角・全角スペース削除

$("#keyword").on('keyup', function(e) {
  if ($(this).val().match(/^( | )+|( | )+$/g)) {
    $(this).val($(this).val().replace(/^( | )+|( | )+$/g, ''));
  }

}).on('paste', function(e) {
  var keyword = this;

  setTimeout(function () {
    $(keyword).val($(keyword).val().replace(/^( | )+|( | )+$/g, ''));
  }, 1);
});

まとめ

・keyupとpasteで入力・ペースト時の文字列を制御する
・keyup時はmatchでいったんマッチするかチェックした上で削除する(chromeで十字キーでの移動ができなくなるため)
・paste時はsetTimeoutを使うことでペースト時の文字列を取得する