私はいくつかの仕事をしていますが、まだ3つの問題があります。私は多くの方法を試しましたが、役に立たないものは何もありませんでした。jQueryを十分に知っている場合は、いくつかの変更を提案してください。
まず、以下のURLをご覧ください。
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();
}
}
});
});