0

我有一个 textBox 控件,希望我的用户只能输入....@firm1.com''....@firm2.com'

如何使用 JavaScript 函数做到这一点?该函数必须采用文本框值。

4

2 回答 2

2

给用户一个文本框但只允许他写两个值是没有意义的,
您应该使用下拉菜单:

<select>
    <option value="0"> @firm1.com </option>
    <option value="1"> @firm2.com </option>     
</select>

更新:

如果您出于某种未知原因确实必须使用文本框:

$('#textboxId').change(function(){
    if (!this.value.match(/(@firm1.com|@firm2.com)$/g))
        alert('invalid value'); 
});​

现场演示

于 2012-05-14T08:43:52.773 回答
1

试试这个代码 -

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
    var patt1 = "[A-Za-z0-9._%+-]+@firm(1|2).com";
    function demoShowMatchClick(str) {
        var re = new RegExp(patt1);
        var m = re.exec(str);
        if (m == null) {
            document.getElementById("match").innerHTML = "no match";
        } else {
            document.getElementById("match").innerHTML = "match";
        }
    }
</script>
</head>
<body>
<span id="match"></span>
<input type="text" onkeyup="demoShowMatchClick(this.value)" />
</body>
</html>
于 2012-05-14T09:25:37.970 回答