---
title: "onChange -> validate"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/74854-onchange-validate/page2"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "ironhead"
published: "2003-04-24T09:13:45.000Z"
updated: "2003-04-29T10:49:42.000Z"
replies: 21
views: 444
page: 2
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/74854-onchange-validate"
---

# onChange -> validate

_Sida 2 av 2._

## #21 — ironhead, 2003-04-29T08:33Z

Får fortfarande inte start - stoppdatum att fungera...  :(

Permalänk: https://www.webforum.nu/p/1027439

## #22 — Peter S, 2003-04-29T10:49Z

Testa detta då:

```
<script type="text/javascript">
<!--

function validate(o){
	var
		elm=o.elements,
		l=elm.length-1,
		m=[31,0,31,30,31,30,31,31,30,31,30,31],
		d1=null,
		d2=null;

	for(var i=0; i < l; i++){
		var e=elm[i];

		if(e.name.indexOf("year")!=-1){
			if(isNaN(e.value)||e.value.length!=4){
				alert("Felaktigt årtal");
				e.focus();
				return false;
			}
		}
		if(e.name.indexOf("month")!=-1){
			if(isNaN(e.value)||e.value.length!=2||e.value<1||e.value>12){
				alert("Felaktig månad");
				e.focus();
				return false;
			}
		}
		if(e.name.indexOf("day")!=-1){
			m[1]=isLeapYear(o[i-2].value)?29:28;

			if(isNaN(e.value)||e.value.length!=2||e.value<1||e.value>m[o[i-1].value-1]){
				alert("Felaktig dag");
				e.focus();
				return false;
			}
		}
	}

	if(new Date(parseInt(o.elements[0].value),parseInt(o.elements[1].value),parseInt(o.elements[2].value)).valueOf() > new Date(parseInt(o.elements[3].value),parseInt(o.elements[4].value),parseInt(o.elements[5].value)).valueOf()){
		alert("Publikationsdatumet får ej vara större än stoppdatumet");
		return false;
	}

	function isLeapYear(n){
		return (n%4==0&&n%100!=0)||(n%400==0);
	}
};

//-->
</script>
```

 :)

Permalänk: https://www.webforum.nu/p/1027508

---

Tråden på webben: https://www.webforum.nu/amne/javascript/74854-onchange-validate/page2  
Föregående sida: https://www.webforum.nu/amne/javascript/74854-onchange-validate.md
