2016-11-07 9 views
-3

フォームには、ユーザーがタイトルを挿入する簡単な入力テキストフィールドがあります。html入力テキスト:完全な大文字を無効にする

<input type="text" name="title_input" id="title_input" value="" /> 

私は、ユーザーが大文字の完全な数字を挿入できないようにしたいと思います。

私はこのような無効桁にしたい:

  • Loremのイプサムの嘆き
  • 座る:

    • Loremのイプサム嘆きSIT

    このような桁が有効にしたいです

  • Lorem ipsum 16V悲しみのC4は
  • Loremのイプサムの嘆き座るAMET

座る私はすでに、すべてのテキストを小文字に変換する方法を知っているが、私が欲しいものではありません。

<input type="text" onkeyup="this.value=this.value.toLowerCase();" name="title_input" id="title_input" value="" /> 

または

<input type="text" pattern="[a-z]+" title="only lowercase" name="title_input" id="title_input" value="" /> 

私は "Loremのイプサム16V悲しみC4 SIT" と入力した場合、私ははこのようなケースを下げるために、すべての文字を変換する必要はありません:

  • Loremのipsum 16v dolor c4 sit

これに変換する:

  • Loremのイプサム16Vの嘆きのC4

に座る私は、HTML5、JavaScriptやjQueryを使ってこの検証を行うことができます。 どうすればいいですか?

-

おかげヴァシル、 は私が欲しいものを正確にはありませんが、それはタイトルがいっぱい大文字がある場合は、エラーメッセージを表示するための有用な代替することができます。

function validateForm() { 
    var titleEl = document.getElementById('title_input'); 
    var title = titleEl.value; 
    var upperLength = 0; 
    var Ncount = 0; 
    var CharCount = 0; 

    for (var i = 0; i < title.length; i++) { 
    if(isNaN(title[i])){ 
    upperLength += (title[i] === title[i].toUpperCase() ? 1 : 0); 
    }else{ Ncount = Ncount + 1; } 
    } 

    CharCount = title.length - Ncount; 

    if (upperLength === CharCount) { 
    alert('Invalid title'); 
    return false; 
    } 

    return true; 
}; 

大文字はどうですか?

エラーを返す必要があり、間違ったタイトル:

+0

を "シトロエンC4 NEWを販売すること" であってもよい

  • を "ipadとNEWを売ります"役に立つ - http ://stackoverflow.com/questions/14106971/forcing-form-text-to-be-erer-case –

  • 答えて

    -1

    jsfriddle

    <form onsubmit="return validateForm()"> 
        <input type="text" value="" id="title_input" /> 
        <input type="submit" /> 
    </form> 
    
    
    <script> 
    function validateForm() { 
        var titleEl = document.getElementById('title_input'); 
        var title = titleEl.value; 
        var upperLength = 0; 
    
        for (var i = 0; i < title.length; i++) { 
        upperLength += (title[i] === title[i].toUpperCase() ? 1 : 0); 
        } 
    
        if (upperLength === title.length) { 
        alert('Invalid title'); 
        return false; 
        } 
    
        return true; 
    }; 
    </script> 
    
    関連する問題