function searchSubmit(form_obj) {
	// rosenSetを使用したページは submit 前にこれを実行してください。
//	resetReadOnly(new Array('r_division','d_division'));
	resetReadOnly(new Array('r_area','r_city','d_area','d_city'));
//	form_obj.submit;
}

function makeSublist(form, parent, child, isSubselectOptional, childVal, defaultVal) {
	//都市の複製（隠し）を生成＆元は消去
	$("body").append("<select style='display:none' id='" + "bk_" + form + "_" + child + "'></select>");
	$("#" + "bk_" + form + "_" + child).html($("#" + form + " ." + child + " option"));
	if (childVal != "0") {
		//都市を変更
		changeCity(form, Array(parent, child), childVal);
	} else {
		//都道府県の値を取得
		var parentVal = $("#" + form + " ." + parent).attr("value");
		//都道府県を変更
		changeDivision(form, Array(parent, child), parentVal);
	}

	//都道府県変更のアクション
	$("#" + form + " ." + parent).change(function() {
		//都道府県の値を取得
		var parentVal = $("#" + form + " ." + parent).attr("value");
		//都道府県を変更
		changeDivision(form, Array(parent, child), parentVal);
  });
}

//逆区間
function reverseArea(form) {
	r_division = $("#" + form + " .r_division").attr("value");
	d_division = $("#" + form + " .d_division").attr("value");
	if ( !$.isEmptyObject($("#" + form + " .r_city")) ) {
		r_city = $("#" + form + " .r_city").attr("value");
		d_city = $("#" + form + " .d_city").attr("value");
	}
	
	changeDivision(form, Array("r_division", "r_city"), d_division);
	changeDivision(form, Array("d_division", "d_city"), r_division);
	if ( !$.isEmptyObject($("#" + form.id + " .r_city")) ) {
		$("#" + form + " .r_city").val(d_city);
		$("#" + form + " .d_city").val(r_city);
	}
	return false;
}
function reverseAreaTop(form) {
	r_area = $("#" + form + " .r_area").attr("value");
	d_area = $("#" + form + " .d_area").attr("value");
	if ( !$.isEmptyObject($("#" + form + " .r_city")) ) {
		r_city = $("#" + form + " .r_city").attr("value");
		d_city = $("#" + form + " .d_city").attr("value");
	}
	
	changeDivision(form, Array("r_area", "r_city"), d_area);
	changeDivision(form, Array("d_area", "d_city"), r_area);
	if ( !$.isEmptyObject($("#" + form.id + " .r_city")) ) {
		$("#" + form + " .r_city").val(d_city);
		$("#" + form + " .d_city").val(r_city);
	}
	return false;
}

//都道府県を変更
function changeDivision(form, targets, value) {
	if (!(targets instanceof Array)) {
		targets = new Array(targets);
	}
	//都道府県を選択する
	$("#" + form + " ." + targets[0] + ' option[value=' + value + ']').attr("selected", "selected");

	if (targets.length>1) {
		//番号に合致する都市を複製
		$("#" + form + " ." + targets[1]).html($("#"+ "bk_" + form + "_" + targets[1] + " .sub_" + value).clone());
		//都市の選択状態を初期化
		$("#" + form + " ." + targets[1]).prepend("<option value='0'> 都市を選択してください </option>");
//		$("#" + form + " ." + targets[1]).trigger("change");
		$("#" + form + " ." + targets[1] + ' option[value="0"]').attr("selected", "selected");
//		$("#" + form + " ." + targets[1]).focus();
	}
	return false;
}

//街を変更
function changeCity(form, targets, value) {
	var values = [];
	if (!(targets instanceof Array)) {
		targets = new Array(targets);
		values = new Array(value);
	} else {
		values = new Array(0,value);
	}

	//class から都道府県番号を生成
	values[0] = $("#" + "bk_" + form + "_" + targets[1] + ' option[value=' + values[1] + ']').attr("class").replace('sub_', '');

	changeDivision(form, Array(targets[0], targets[1]), values[0]);
	//都市の選択状態を変更
	$("#" + form + " ." + targets[1] + ' option[value=' + values[1] + ']').attr("selected", "selected");
}
/*
function rosenSet(form, r_division, d_division) {

	$("#" + form + ' .r_division option[value="' + r_division + '"]').attr("selected", "selected");
	$("#" + form + ' .d_division option[value="' + d_division + '"]').attr("selected", "selected");
	$("#" + form + " .d_division").trigger("change");
	$("#" + form + " .r_division").trigger("change");
	return false;
}
*/
function rosenSet(form, r_city, d_city) {
	$("#" + form + ' .r_city option[value="' + r_city + '"]').attr("selected", "selected");
	$("#" + form + ' .d_city option[value="' + d_city + '"]').attr("selected", "selected");
	$("#" + form + " .d_city").trigger("change");
	$("#" + form + " .r_city").trigger("change");

	return false;
}
/*
function rosenMode() {
	if ($('input[name="rosen"]:checked').val()!="0") setReadOnly(new Array('r_division','d_division'));
	else resetReadOnly(new Array('r_division','d_division'));
}
*/
function rosenMode() {
	if ($('input[name="rosen"]:checked').val()!="0") setReadOnly(new Array('r_area','d_area','r_city','d_city'));
	else resetReadOnly(new Array('r_area','d_area','r_city','d_city'));
}

function setReadOnly($objs) {
	if (!($objs instanceof Array)) {
		$objs[0] = $objs;
	}
	for (var $i=0; $obj = $objs[$i]; $i++) {
		$('.'+$obj).attr('disabled','disabled');
//			Element.addClassName($($obj), "readonly");
	}
}

function resetReadOnly($objs) {
	if (!($objs instanceof Array)) {
		$objs[0] = new Array($objs);
	}
	for (var $i=0; $obj = $objs[$i]; $i++) {
		$('.'+$obj).attr('disabled','');
//			Element.removeClassName($($obj), "readonly");
	}
}

