2011-09-12 5 views
-2
 // Validate Sentence Case 
    if(dataEntryCaseId.toString().match("4")){ 
     var newValue = toTitleCase(value); 
     if(newValue != value){ 
      for(var x = 1, j = value.length; x < j; x++){ 
       if(value.charAt(x) != newValue.charAt(x)){ 
        valid = false; 
        $("#text_10").attr({"value":$("#text_10").attr("value").replace(value.charAt(x), "")}); 
        finalVal = finalVal.replace(value.charAt(x), ""); 
       } 
      } 
     } 
    } 


    if(!valid){ 
     for(var x = 0, j = styleNoteJsonData.styleGroupNote.length; x < j; x++){ 
      if(styleNoteJsonData.styleGroupNote[x].styleName == styleGroupName){ 
       alert(styleNoteJsonData.styleGroupNote[x].styleNote); 
       $(".styleNote").addClass("alertRed"); 
       SendErrorMessage(styleNoteJsonData.styleGroupNote[x].styleNote); 
      } 
     } 
    } else { 
     $(".styleNote").removeClass("alertRed"); 
    } 

    if(finalVal.length > 0){ 
     return true; 
    } 

    return valid; 

} 


function toTitleCase(str){ 

     return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();}).replace(/\s/, ''); 


} 

私は正規表現でこれを行うにしようとしていたJavaScriptの検証 - 最初の首都のみ - 方法?

(それはする必要はありません)最初の文字を大文字にすることを可能にするだけにこれを手直しする必要がある - 私はよく分からない場合には必要とされていますjavascriptのバリデーションが正しい - seefunction toTitleCase(str)

regexは正規表現と思われますが、現在の検証ではそれが使用されている可能性がありますが、組み込みが簡単かもしれませんが、現在のコード

+3

O_Oを、開始と終了の空白文字を削除代わりにstr = str.replace(/^\s+/,"").replace(/\s+$/,"");を追加したい場合。うわー..そんなに多くの手紙。より具体的にしてください。 –

+1

あなたが与えたサンプルコードは、アプリケーションの動作についてリバースエンジニアリングする必要があります。検証メカニズムがどのように機能するのか、あなたにとって効果的ではない特定のコードについての簡単な英語の説明にあなたの例を下げてください。 –

+0

あなたは何を検証していますか?あなたは例を証明できますか?入力、期待される出力、現在の出力? –

答えて

1

あなたの質問はあまり明確ではありません。あなただけの最初の大文字を維持したい場合は、この関数を使用します。

function toTitleCase(str){ 
    return str.charAt(0)+str.substring(1).toLowerCase(); 
} 

その他の注意事項:あなたはすべての空白文字を削除したいとき
return ...str = str.replace(/\s/g,"");を追加します。

あなたが唯一、

関連する問題