2016-07-22 14 views
1
<input type="text" required> 

$('input').blur(function() { 
    console.log($('input')[0].checkValidity()); 
}); 

スペースを入力すると、コンソールにtrueが表示されます。これは非常になぜ入力checkValidityのスペースが本当ですか?

+0

スペースは、コードASCII 30の文字であるため、その後、絶対にそれはtrueを返します( ''!= null)の – bfahmi

+0

あなたがチェックすることができ[必須属性](https://www.w3.org/TR /html5/forms.html#the-required-attribute)セクションをご覧ください。 –

+0

@bfahmi、これは私が欲しいものです、ありがとう! – maicss

答えて

1

Attibute requiredチェックだけをしたいものを置くことができます入力に文字があれば(空白も)。

空白を確認する場合は、patternを使用できます。

<input type="text" pattern="\S+" required> 
1

あなたは私はあなたの例を与えるHTML5パターン

を使用することができます...混同されていますが、あなたが

$('input').blur(function() { 
 
    console.log($('input')[0].checkValidity()); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<!-- this pattern don't allow to put a space in th input--> 
 
<input type="text" pattern="^((?!\s).)*$" required>

+0

@ user5809498;それをマークしてください、正しい答え – bfahmi

+0

私はそれを修正する方法を知っている、私が知りたいのはなぜです。 – maicss

+0

あなたの答えをありがとう。 – maicss

関連する問題