【问题标题】:Replace line-breaks by spaces using javascript使用javascript用空格替换换行符
【发布时间】:2011-10-28 19:01:02
【问题描述】:

我想看看是否可以阻止输入键并将其替换为空格。我还使用表单验证来只允许字母、数字和其他一些特定字符,如美元符号、减号和句点等。

这是该代码,我想看看我是否可以将它们合并为一个,并能够检查验证并将按键替换为空格,全部在一个代码/调用中。

<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>

感谢您的帮助...

【问题讨论】:

    标签: javascript regex validation onsubmit


    【解决方案1】:

    在 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;
    
    }
    

    【讨论】:

      【解决方案2】:

      如果您删除了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>
      

      【讨论】:

        猜你喜欢
        • 2012-04-08
        • 1970-01-01
        • 2014-11-07
        • 2013-06-19
        • 2015-08-03
        • 2023-03-27
        • 2012-07-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多