我正在做一些工作,但我还有 3 个问题。我尝试了很多方法,但没有任何用处。如果您足够了解 jQuery,请建议我进行一些更改。
首先请查看以下网址:
http://jsfiddle.net/thisizmonster/maP57/
我在做什么是:
- 用户将输入电话号码。
- 数字将只有 8 个字符的长度。
- 数字必须以 9 或 7 开头。表示 9xxxxxxx 或 7xxxxxxx。
- 用户最多可以输入 3 个数字。
- 数字必须用逗号分隔。
目前的问题是:
- 数字后面不能有逗号。只在数字之间。
- 在写入时验证 9xxxxxxx 或 7xxxxxxx 格式的数字。
- 他们不能输入继续逗号。我的意思是“,”不允许。
如果您在 jsfiddle 上看不到示例,这里是复制版本:
HTML
<input type="text" id="sms-sender" />
JS
$(document).ready(function() {
$("#sms-sender").keypress(function(event) {
var numbers = $("#sms-sender").val().split(',');
var maxMsg = 3;
if (event.which != 44 && (event.which < 47 || event.which > 59) || numbers.length > maxMsg) {
event.preventDefault();
}
if (numbers.length > maxMsg) {
event.preventDefault();
}
if (event.which == 44) {
if (numbers.length <= maxMsg) {
$("#number-div").html("");
for (i = 0; i < numbers.length; i++) {
$("#number-div").append("<div class='numbers'> "+numbers[i]+"</div>").fadeIn('slow');
if (numbers[i].length != 8) {
$("#number-div").append("wrong")
}
}
}
}
if (numbers[numbers.length - 1].length > 7) {
if (event.which != 44) {
event.preventDefault();
}
}
});
});