2017-02-09 151 views
2

如果有什麼是輸入錯誤,我希望它突出紅色。我試過如下:傳遞元素的數組正確

+5

這聽起來好像'//東西不relevant'可能比你想象的更重要。請發佈[mcve]。 – CollinD

+0

是什麼讓你覺得有什麼不對?你有沒有遇到任何錯誤或意想不到的輸出? – 4castle

+0

我糾正了我以前的代碼@CollinD – 4reffdsfsffewf

回答

1

我建議只使用一個系統訪問輸入的Fileds,無論是通過表單名並輸入姓名或ID和document.getElementById

然後我建議使用idname屬性<input type="text">具有相同的值。

爲了檢查內容和改變風格,我走元素,並使用一個陣列,id

function check() { 
 
    var regex = new RegExp(/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?()]/), 
 
     ltr = /[a-zA-Z ]+/, 
 
     inputs = ['nem', 'nef', 'rem', 'ref', 'ea', 'ver', 'kavm', 'kavf'], 
 
     i, 
 
     fehlerB = false, 
 
     element; 
 

 
    for (i = 0; i < inputs.length; i++) { 
 
     element = document.getElementById(inputs[i]); 
 
     if (ltr.test(element.value) && !regex.test(element.value)) { 
 
      element.style.border = '2px solid red'; // i suggest to use 2px, because 
 
      fehlerB = true;       // it renders better on displays 
 
     }           // with sub pixel 
 
    } 
 
    return !fehlerB; 
 
}
<form name="inputform" id="inputform" onsubmit="return check()" action=""> 
 
    <input id="nem" name="nem"> 
 
    <input id="nef" name="nef"> 
 
    <input id="rem" name="rem"> 
 
    <input id="ref" name="ref"> 
 
    <input id="ea" name="ea"> 
 
    <input id="ver" name="ver"> 
 
    <input id="kavm" name="kavm"> 
 
    <input id="kavf" name="kavf"> 
 
    <input type="submit" onclick="return check()" /> 
 
</form>