Javascript验证允许名称中的空格,连字符和外来字符

时间:2011-08-02 17:05:29

标签: javascript validation special-characters

我目前正在使用这样的代码:

    var alphaExp = /^[a-zA-Z]+$/;
    if (f_name.value.length > 1 && f_name.value.match(alphaExp)) {
        // success
    }
    else {
        document.getElementById("f_name_mark").innerText = "<img src='images/icons/cross.png' class='mark'>";
        // fail
    }

但是,alphaExp仅考虑大写和小写英文字符。如何允许外国字母(é,å,ü等)和空格/连字符?

2 个答案:

答案 0 :(得分:1)

您可以尝试以下正则表达式:

/^[a-z- \xC0-\xFF]+$/i

示例

JSFiddle

&#13;
&#13;
function validate() {
  var regex = /^[a-z- \xC0-\xFF]+$/i;
  var value = document.getElementById("txt").value;
  document.getElementById("result").innerHTML = regex.test(value) ? "valid": "incorrect"
}
&#13;
<input type="text" id="txt">
<button onclick="validate()">Validate</button>
<p id="result"></p>
&#13;
&#13;
&#13;

Encoding Reference

答案 1 :(得分:0)

插入\s以允许空格。 添加您想要匹配的其他字母或符号。

var alphaexp = /^[a-zA-Z\séåü]+$/