そのため、テキストエリアを持つフォームがあり、テキストエリアがスペースまたは改行だけで埋められている場合\n
、最初の条件でフォームを送信したくありません
$("textarea").val().replace(/\u0020+/gm, ' ');
if($("textarea").val().length<2) return;
しかし、テキストエリアが新しい行だけで埋められているときにフォームが送信されないようにする方法がわかりません。
そのため、テキストエリアを持つフォームがあり、テキストエリアがスペースまたは改行だけで埋められている場合\n
、最初の条件でフォームを送信したくありません
$("textarea").val().replace(/\u0020+/gm, ' ');
if($("textarea").val().length<2) return;
しかし、テキストエリアが新しい行だけで埋められているときにフォームが送信されないようにする方法がわかりません。
jQueryを使っているようです。$.trim()
文字列の先頭と末尾の不要な空白を削除する便利な機能があります。スペース、エンター、およびその他の空白文字のみで構成される文字列で実行trim
すると、空の文字列になるため、問題なく動作します。
if($.trim($("textarea").val()).length < 2) return;
Javascript にもネイティブString.trim()
機能がありますが、古い IE ではサポートされていません。このコードを使用して、この方法を「教える」ことができます。
if(!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g,'');
};
}