2011-10-28 41 views
3

Enterキーをブロックしてスペースで置き換えることができるかどうかを確認します。また、フォームの検証を使用して、文字、数字、ドル記号、マイナス、ピリオドなどの特定の文字のみを許可しています。javascriptを使用して改行をスペースで置き換えてください

ここにそのコードを示します。私はそれらを1つに組み合わせて、検証をチェックして、キープレスをスペース/コードに置き換えることができるかどうか確認したいと思います。

<script type="text/javascript"> 
function ValidateForm(form) 
{ 
var str 
str=document.getElementById('limitedtextarea').value 
str=str.replace(/[^A-Za-z0-9.-:/$ ]/g, ""); 
document.getElementById('limitedtextarea').value=str 
//return true; 

} 
</script> 

<FORM action="sms_SendMessage.asp" method=post onsubmit="javascript:return ValidateForm(this)" target=_blank> 

助けてくれてありがとう...

答えて

3

javascriptでは、改行文字は\nで表されます。あなたは、次のような検証関数でスペースで置き換えることができます:

function ValidateForm(form) 
{ 
    var str 
    str=document.getElementById('limitedtextarea').value 
    str=str.replace(/[^A-Za-z0-9.-:/$ ]/g, ""); 
    str=str.replace(/\n/g, " "); 
    document.getElementById('limitedtextarea').value=str 
    //return true; 

} 
+0

うん、ありがとう.... – compcobalt

1

あなたがonsubmitを削除し、送信ボタンを持っていない場合は、入力します入力すると、それを提出しないでしょう。

<body> 
    <form> 
     <textarea></textarea> 
    </form> 
<script> 
(function(){ 
    var txt = document.getElementsByTagName('TEXTAREA')[0]; 
    txt.onkeypress = function(ev){ 
     ev = ev || window.event; 
     if (ev.keyCode === 13){ 
      if (window.event) { 
       window.event.returnValue = false; 
      } 
      if (ev && ev.preventDefault) { 
       ev.preventDefault(); 
      } 
      txt.value += ' '; 
     } 
    }; 
})(); 
</script> 
</body> 
+0

これは素晴らしいです!ありがとうございました – compcobalt

関連する問題