私の問題を解決するにはいくつかの助けが必要です。 > 12/2010(mm/yyyy)のようなマスク(http://digitalbush.com/projects/masked-input-plugin/)を持つ2つの入力フィールドがあります。無効な日付の2フィールドの送信フォームをブロック
日付が有効なときにフォームを登録したり空白のままにしたり、日付が無効なときにdivにアラートを送信してもらいたい。
1つのフィールドがある場合はうまくいきますが、2つのフィールドがある場合、2番目のフィールドに有効な日付を入力するとフォームを登録できます。
エルス、あなたは開始日の前にすることができ、終了日を制限する任意のアイデアを持っている場合は...任意の助け
感謝;)
私のHTMLコード:
<form id="blockdate">
<div>date start: <input class="date" type="text"></div>
<div>date end: <input class="date2" type="text"></div>
<div><input class="submit" type="submit"></div>
<div id="msg"></div>
</form>
私のJSコード:
function verifyDate(datevalue) {
var done = false;
if(datevalue != null || datevalue != ''){
var tmp = datevalue.split('/');
var month = tmp[0];
var year = tmp[1];
if(month >= 1 && month <= 12){
if(year >= 1990 && year <= 2099){
clean();
done = true;
}
else {
$('#msg').html('Year invalid 1900 - 2099.');
}
} else {
$('#msg').html('Month invalid');
}
} if (datevalue < 1) {
done = true;
}
return done;
}
function verifyDate2(datevalue2) {
var done = false;
if(datevalue2 != null || datevalue2 != ''){
var tmp = datevalue2.split('/');
var month = tmp[0];
var year = tmp[1];
if(month >= 1 && month <= 12){
if(year >= 1990 && year <= 2099){
clean();
done = true;
}
else {
$('#msg').html('Year invalid 1900 - 2099.');
}
} else {
$('#msg').html('Month invalid');
}
} if (datevalue2 < 1) {
done = true;
}
return done;
}
function clean() {
$('#msg').html('');
}
jQuery(function($) {
$(".date").mask("99/9999");
$('.blockdate').submit(function() {
var datevalue = $('.date').val();
var datevalue2 = $('.date2').val();
return verifyDate(datevalue);
});
$(".date").change(function(){
var datevalue = $(this).val();
if(datevalue.length == 7) {
verifyDate(datevalue);
} else {
clean();
}
});
jQuery(function($) {
$(".date2").mask("99/9999");
$('.blockdate').submit(function() {
var datevalue2 = $('.date2').val();
return verifyDate2(datevalue2);
});
$(".date2").change(function(){
var datevalue2 = $(this).val();
if(datevalue2.length == 7) {
verifyDate2(datevalue2);
} else {
clean();
}
});
});
});
こんにちはOybek、しかし、私はJSに慣れていないんだと私は、この関数を呼び出す方法を理解していない:
が、これは間違った入力にFORMSUBMITを防ごうか? ?? 多くのありがとう – Tomaw
'verifyDate'関数を' TestDate'に置き換えます – Oybek
私は答えを見つけることができません。私は素晴らしいコードで別のことを試しますが、解決策を見つけることはできません。 もう一度ご迷惑をおかけして申し訳ありません... – Tomaw