function loadHtml(url, pars, divName) {
	pars = getSerialNumber() + "&" + pars;
	var myAjax = new Ajax.Updater( {
		success :divName
	}, url, {
		method :'get',
		parameters :pars
	});
}

function doSubmit(url, divName) {
	var myAjax = new Ajax.Updater( {
		success :divName
	}, url, {
		method :'post',
		parameters :Form.serialize(thisForm)
	});
}

function getSerialNumber() {
	var serial = Math.random() * 9999;
	return "serial=" + serial;
}
function setFrameSize(iframe) {
	var body;
	if (Prototype.Browser.IE) {
		try { // 解决跨站frame拒绝访问错误。
			body = document.compatMode == 'CSS1Compat' ? document.frames[iframe.name].document.documentElement
					: document.frames[iframe.name].document.body;
		} catch (err) {
			body = document.compatMode == 'CSS1Compat' ? iframe.document.documentElement
					: iframe.document.body;
		}
		iframe.height = body.offsetHeight + 40;
	} else {
		try {
			body = document.compatMode == 'CSS1Compat' ? iframe.contentDocument.documentElement
					: iframe.contentDocument.body;
		} catch (err) {
			body = document.compatMode == 'CSS1Compat' ? iframe.contentDocument.documentElement
					: iframe.contentDocument.body;
		}
		iframe.height = body.offsetHeight + 10;
	}
}

var html_doc = document.getElementsByTagName('head')[0];
function include_css(css_file, onload) {
	var css = document.createElement('link');
	css.setAttribute('rel', 'stylesheet');
	css.setAttribute('type', 'text/css');
	css.setAttribute('href', css_file);
	if (onload) {
		css.onload = onload; // for FF
		css.onreadystatechange = function() { // for IE
			if (css.readyState == 'complete') {
				onload();
			}
		}
	}
	html_doc.appendChild(css);

	return false;
}

function include_js(file, onload) {
	var js = document.createElement('script');
	js.setAttribute('type', 'text/javascript');
	js.setAttribute('src', file);
	if (onload) {
		js.onload = onload;
		js.onreadystatechange = function() {
			if (js.readyState == 'complete') {
				onload();
			}
		}
	}
	html_doc.appendChild(js);
	return false;
}

function doUpdateWithValidateAndInfo(form, url, options) {
	options = options || {};
	var param;
	if (form) {
		if (options.validate != false && !Validator.Validate(form, 2))
			return;
		param = options.params ? Form.serialize(form) + "&" + options.params
				: Form.serialize(form);
	} else
		param = options.params;
	if (options.firer)
		options.firer.disable();
	var myAjax = new Ajax.Request(url, {
		method :'post',
		parameters :param,
		onSuccess : function(transport) {
			if (options.receiver) {
				options.receiver.update(transport.responseText);
				if (options.afterUpdate)
					options.afterUpdate();
			} else if (transport.responseText && transport.responseText != ""
					&& transport.responseText.isJSON()) {
				if (options.onInfo) {
					var r = transport.responseText.evalJSON();
					options.onInfo(r.message, r.successfully);
				} else
					alert(transport.responseText.evalJSON().message);
			}
			if (options.firer)
				options.firer.enable();
			if (options.afterSuccess)
				options.afterSuccess();
		},
		onFailure : function() {
			alert("服务器内部错误，请稍候再访问。");
			if (options.firer)
				options.firer.enable();
		}
	});
}

var $N = document.getElementsByName;

