2017-07-27 6 views
1

テキストボックスに指定された値から先頭と末尾のスペースを削除します。そのために私はJavaScriptのバリデーションを使用しています。その中で私は2つの変数を宣言しており、これらの変数に割り当てられた値をチェックしようとしたとき、私はundefinedを値として取得しています。私が間違っている場所を教えてください。JSの検証で - テキストボックスから空白を削除しようとしていますが、未定義の値を取得しようとしています

function trim(StringtoTrim){ 
 
    StringtoTrim.replace(/^\s\s*/, ''); 
 
} 
 

 
function validate() 
 
{ 
 
    alert("in validate "); 
 
    var value1 = myform.fname.value; 
 
    alert(value1.value); 
 
    var value2 = trim(value); 
 
    alert(value2.value); 
 
    if(value2.length != value1.length) 
 
    { 
 
     document.getElementById('errfn').innerHTML="please remove leading and trailing spaces "; 
 
     return false; 
 
    } 
 
}
<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
    </head> 
 
    <body> 
 
     <form name="myform" onsubmit="return validate();"> 
 
      First_Name 
 
      <input type="text" name="fname"/><span id="errfn"></span> 
 
      <br> <br> 
 
      <input type="submit"/> 
 
     </form> 
 
    </body>

答えて

2

あなたが取得しようとしている

var value1 = myform.fname; 
alert(value1.value); 

と第二の値が

var value2 = trim(value); 

が定義されていない値の値はvalue1する必要がありますが、まだスクリプトがありますそれよりも多くの問題。下記を参照してください

function validate() 
{ 
    alert("in validate "); 
    var value1 = myform.fname.value; 
    alert(value1); 
    var value2 = value1.trim(); 
    alert(value2); 
    if(value2.length != value1.length) 
    { 
     document.getElementById('errfn').innerHTML="please remove leading and trailing spaces "; 
    return false; 
    } 
} 
+0

である必要があります。「var value2 = trim(value1);」 –

+0

Ohh!真剣にそれは大失敗だった。とにかくありがとう。わたしにはできる。 –

+0

問題ありません。解決されたマークを付けることを忘れないでください。後で他の人に役立つかもしれません。 –

2

独自の作成されたトリム機能が壊れている場合、後続のスペースが残ります。

にはtrim()が組み込まれています。 これは先頭と末尾のスペースをすべて削除しますが、単語の中にスペースを残します。で" de mo ".trim()

が発生します:その他の問題がある検証機能で

"de mo"

、あなたは無効であるmyform.fname.value.valueにアクセスしようalert(value1.value)

にアクセスしようとすると、これはあります。alert(value1)

var value2 = trim(value)ここでは値は未定義であり、var value2 = trim(value1)

+0

ちょうどあなたに思い出させるために、トリムのあなたの正規表現は末尾のスペースを削除しません、それを書く目的は何ですか? – vrotos

+0

うん!私はちょうどそれをチェックした。ありがとう –

関連する問題