Как сравнить дату начала и дату окончания?

Я хочу сравнить две даты, начальную дату и конечную дату. Начальная дата должна быть меньше конечной даты. Я не хочу событие оповещения, я хочу показать сообщение в поле даты окончания, когда эта дата меньше, аналогичные сообщения требуют = "" из html5. Это мой код:

function validate() {
inicio=document.getElementById('fechaInicial').value;
fin=document.getElementById('fechaFinal').value;
if(fin<inicial) 
document.getElementById('fechaFinal').setCustomValidity('Esta fecha ser mayor a fecha incial.');
}
<form class="form-horizontal"  method="post" action="" name="form"'>
Desde:<input name="fechaInicial" type="date" placeholder="" required="" max="<?php echo date("Y-m-d");?>">
Hasta:<input name="fechaFinal" type="date" title="La fecha inicial debe ser menor que la fecha final" required="" max="<?php echo date("Y-m-d");?>" oninput="validate()">
</form>
0
задан 10.04.2017, 00:11
2 ответа

У тебя есть достаточно проблем с кавычками. Кроме того, им не показали ID's ни одного твой inputs.

С другой стороны, ты был бы должен сравнивать относительно inicio и не в переменную inicial, которая не определена.

И в конце концов, для того, чтобы признак title изменитесь, когда условие будет неправильным, ты должен повторно писать Вашу стоимость соглашаясь прямо на стоимость title:

function validate() {
inicio=document.getElementById('fechaInicial').value;
fin=document.getElementById('fechaFinal').value;
if(fin<inicio) 
document.getElementById('fechaFinal').title ='Esta fecha ser mayor a fecha incial.';
}
<form class="form-horizontal"  method="post" action="" name="form">
Desde:<input id="fechaInicial" name="fechaInicial" type="date" placeholder="" required="" max="<?php echo date('Y-m-d');?>">
Hasta:<input id="fechaFinal" name="fechaFinal" type="date" title="La fecha inicial debe ser menor que la fecha final" required="" max="<?php echo date('Y-m-d');?>" oninput="validate()">
</form>
2
ответ дан 24.11.2019, 12:37
  • 1
    Извини, ты имеешь razó n я ушла двойная кавычка вместе с простой кавычкой, ademá s не размещайте id к inputs, относительно alert я хочу, чтобы он появился, как в html5 меняя setCustomValidity () – Jairo Carballo 13.11.2016, 17:33
  • 2
    @JairoCarballo, который ты имеешь в виду с: ** я хочу, чтобы он появился, как в html5 меняя setCustomValidity () ** – hubman 13.11.2016, 17:39
  • 3
    @rn3w Точно собирался спрашивать я то же самое. – Francisco Romero 13.11.2016, 17:40
  • 4
    Я хочу, чтобы, когда конечная дата будет меньше, он не явился alert, а покажет меня title" " – Jairo Carballo 13.11.2016, 17:50
  • 5
    Немного así: Desde< неудар в лунку пойдите =" fechaInicial" ямс =" fechaInicial" type =" date" required =" " max =" <? php я начинаю восходите (" Y-m-d");? > " > Hasta:< неудар в лунку пойдите =" fechaFinal" ямс =" fechaFinal" type =" date" title =" Конечная дата должна быть mayor" required =" " max =" <? php я начинаю восходите (" Y-m-d");? > " oninput =" if (this.checkValidity ()) form.fechaInicial.value > this.value? this.title: ' '); " > – Jairo Carballo 13.11.2016, 17:50

Я заношу в список, это было то, что querГ - в:

<script>
function validate() {
	if(document.getElementById('fechaFinal').value<document.getElementById('fechaInicial').value) 
		document.getElementById('fechaFinal').setCustomValidity('Esta fecha debe ser mayor a la fecha inicial');
	else 
		document.getElementById('fechaFinal').setCustomValidity('');
}
</script>
<form class="form-horizontal"  method="post" action="" name="form">
Desde:<input id="fechaInicial" name="fechaInicial" type="date" placeholder="" required="" max="<?php echo date('Y-m-d');?>">
Hasta:<input id="fechaFinal" name="fechaFinal" type="date" title="La fecha inicial debe ser menor que la fecha final" required="" max="<?php echo date('Y-m-d');?>" oninput="validate()">
<button>Enviar</button>	
</form>
0
ответ дан 24.11.2019, 12:37