All pastes #747021 Raw Edit

Stuff

public javascript v1 · immutable
·published 2007-10-23 18:14 UTC
rendered paste body
function validateField(input, scope){	////////////////////////	Create XMLHttpRequest Object	if (window.XMLHttpRequest) //if Not IE	{		request = new XMLHttpRequest();	}	else if (window.ActiveXObject)	//if IE	{		request = new ActiveXObject("Microsoft.XMLHTTP");	}	var url = "<?php echo smart_url("./field_validation.handler.php"); ?>";	url = url + "?field=" + input.name + "&value=" + input.value + "&scope=" + scope + "&reformat=true";	//prompt("URL", url);	if (request)	{		request.open("GET", url);		request.onreadystatechange = function()		{			if (request.readyState != 4)			{				// do this while waiting for response			}			else if (request.readyState == 4)			{				if (request.status == 200)				{					var XMLDoc = request.responseXML;					if (XMLDoc)					{						var result = XMLDoc.getElementsByTagName("result")[0].firstChild.nodeValue;						var parent = input.parentNode;						while (parent.nodeName != "TR")						{							parent = parent.parentNode;						}						for (var i = 0; i < parent.childNodes.length; i++)						{							if (parent.childNodes[i].className == "alert")							{								var alertElement = parent.childNodes[i];							}						}						if (result == "success")						{							alertElement.innerHTML = '';							var values = XMLDoc.getElementsByTagName("value");							if (values.length)							{								var value = values[0].firstChild.nodeValue;								input.value = value;							}							return true;						}						else						{							////////////////////////	Parse Errors							var errors = XMLDoc.getElementsByTagName("error");							////////////////////////	Display Errors							alertElement.innerHTML = '';							for (var j = 0; j < errors.length; j++)							{								alertElement.innerHTML += '<div class="alert_container">' + errors[j].firstChild.nodeValue + '</div>';							}							return false;						}					}					else					{						//prompt("No XML Returned", url);						return false;					}				}			}		}		request.send(null);	}}