1

フォームの検証を行っています。最初のプレースホルダーが含まれるテキストエリアがあり、ユーザーがテキストエリアにデータを入力したかどうかを確認しようとしています。

jquery を使用してチェックする.text()と、ブラウザ レベルでテキストが追加されていることがわかりません.val()。では、フォームを送信する前にこのチェックを行う適切な方法は何ですか?

<div>
   <textarea class="myUserText"></textarea>
</div>

function validateForm(){
   if($('.myUserText').text()==""){
        //do something here
   }
}
4

3 に答える 3

1

.val() を使用すると、そもそも何も更新されません。では、フォームを送信する前にこのチェックを行う適切な方法は何ですか?

valチェックするのは正しいことであり!= ""、ユーザーがテキストエリアに何かを入力したかどうかになります。

もちろん、彼らが入力したものは単なる改行である可能性があり、それはあなたが望むものではないかもしれません. したがって、次のように考えることができます。

if($('.myUserText').val().replace(/^\s+/, "") === "")

...先頭の空白を無視します。

于 2013-03-06T00:49:39.610 に答える
1

.val()動作するはずです。submit イベントもキャッチします。

$('form').submit(function(e) {
    if (!$('.myUserText').val() == '') {
        e.preventDefault();
        // The form won't submit
    }
});
于 2013-03-06T00:50:27.883 に答える
0

... または、最新の HTML5 オプションの使用に興味がある場合:

幸運を!

于 2013-03-06T01:26:37.250 に答える