85 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
| function pla_getComponentById(id) {
 | |
| 	return document.getElementById(id);
 | |
| }
 | |
| 
 | |
| function pla_getComponentsByName(name) {
 | |
| 	return document.getElementsByName(name);
 | |
| }
 | |
| 
 | |
| function pla_getComponentValue(component) {
 | |
| 	if (component.type == "checkbox") {
 | |
| 		if (component.checked) return component.value;
 | |
| 	} else if (component.type == "select-one") {
 | |
| 		if (component.selectedIndex >= 0) return component.options[component.selectedIndex].value;
 | |
| 	} else if (component.type == "select-multiple") {
 | |
| 		if (component.selectedIndex >= 0) return component.options[component.selectedIndex].value;
 | |
| 	} else if (component.type == undefined) { // option
 | |
| 		if (component.selected) return component.value;
 | |
| 	} else {
 | |
| 		return component.value;
 | |
| 	}
 | |
| 	return "";
 | |
| }
 | |
| 
 | |
| function pla_setComponentValue(component,value) {
 | |
| 	if (component.type == "checkbox") {
 | |
| 		if (component.value == value) component.checked = true;
 | |
| 		else component.checked = false;
 | |
| 	} else if (component.type == "select-one") {
 | |
| 		for (var i = 0; i < component.options.length; i++) {
 | |
| 			if (component.options[i].value == value) component.options[i].selected = true;
 | |
| 		}
 | |
| 	} else if (component.type == "select-multiple") {
 | |
| 		for (var i = 0; i < component.options.length; i++) {
 | |
| 			if (component.options[i].value == value) component.options[i].selected = true;
 | |
| 		}
 | |
| 	} else if (component.type == undefined) { // option
 | |
| 		if (component.value == value) component.selected = true;
 | |
| 		else component.selected = false;
 | |
| 	} else {
 | |
| 		component.value = value;
 | |
| 	}
 | |
| }
 | |
| 
 | |
| function getAttributeComponents(prefix,name) {
 | |
| 	var components = new Array();
 | |
| 	var i = 0;
 | |
| 	var j = 0;
 | |
| 	var c = pla_getComponentsByName(prefix + "_values[" + name + "][" + j + "]");
 | |
| 	while (c && (c.length > 0)) {
 | |
| 		for (var k = 0; k < c.length; k++) {
 | |
| 			components[i++] = c[k];
 | |
| 		}
 | |
| 		++j;
 | |
| 		c = pla_getComponentsByName(prefix + "_values[" + name + "][" + j + "]");
 | |
| 	}
 | |
| 	c = pla_getComponentsByName(prefix + "_values[" + name + "][]");
 | |
| 	if (c && (c.length > 0)) {
 | |
| 		for (var k = 0; k < c.length; k++) {
 | |
| 			components[i++] = c[k];
 | |
| 		}
 | |
| 	}
 | |
| 	return components;
 | |
| }
 | |
| 
 | |
| function getAttributeValues(prefix,name) {
 | |
| 	var components = getAttributeComponents(prefix,name);
 | |
| 	var values = new Array();
 | |
| 	for (var k = 0; k < components.length; k++) {
 | |
| 		var val = pla_getComponentValue(components[k]);
 | |
| 		if (val) values[values.length] = val;
 | |
| 	}
 | |
| 	return values;
 | |
| }
 | |
| 
 | |
| function submitForm(form) {
 | |
| 	for (var i = 0; i < form.elements.length; i++) {
 | |
| 		form.elements[i].blur();
 | |
| 	}
 | |
| 	return validateForm(true);
 | |
| }
 | |
| 
 | |
| function alertError(err,silence) {
 | |
| 	if (!silence) alert(err);
 | |
| }
 |