2013-02-14 64 views
1

我想限制對網站的名稱(這裏)利用空間..js中的空間驗證?

<tr> 
    <td> 
     <h4>Website Name</h4> 
    </td> 
    <td> 
     <input type="text" name="wname" id="wname" size="30" required onfocus="validateWebsite();" oninput="validateWebsite();"> 
     <select name="domain"> 
      <option selected>.com</option> 
      <option>.in</option> 
      <option>.net</option> 
      <option>.org</option> 
      <option>.edu</option> 
      <option>.int</option> 
     </select> 
    </td> 
</tr> 

而且main.js文件包含以下代碼。
我想限制用戶輸入空間。與現有的代碼,它不工作:

function validateWebsite() { 
    var s = document.getElementById('wname'); 
    if (s.indexOf(" ") !== -1){ 
     wname.setCustomvalidity(''); 
    }else{ 
     wname.setCustomValidity('Invalid Website'); 
    } 
} 
+1

究竟什麼是你的問題?我沒有看到任何問號。請花一兩分鐘思考你在問什麼。 – jurgemaister 2013-02-14 13:31:01

+0

@jurgemaister我想限制在'網站名稱'字段的空間使用 – user2051445 2013-02-14 13:34:28

+0

我會說:修剪'#wname'的值,不要打擾用戶 – KooiInc 2013-02-14 13:44:54

回答

1

嘗試......

var s = document.getElementById('wname').value; 
    if(s.trim().length == 0 || s.trim().indexOf(' ') != -1) 
    { 
     // Your code when string is just blank or having spaces 
    } 
    else 
    { 
     // Your code when string is not blank and not having any spaces 
    } 

希望它可以幫助...

3

此:

if (s.indexOf(" ") !== -1) 

應該是:

if (s.value.indexOf(" ") === -1) 

此外,第一setCustomvalidity拼寫錯誤(小寫字母 'V')。