zip.db로 지역을 3단 셀렉트로 불러오는 소스 크롬 파폭 오작동 문의
본문
안녕하세요. :)
아래는 dadada님이 올리신 게시물의 일부입니다.
zip.db로 지역을 3단 셀렉트로 불러오는 소스인데요.
이상하게 크롬,파폭,사파리에서 wr_2 wr_3 변수를 사용하는 시/구/군, 동/읍/면 셀렉트가
검색후에 자동으로 주소변환도 안되고, 셀렉트 위치도 기억을 못해요.
익스플로어 8에서는 아주 잘되거든요.
이리저리 바꿔봐도 잘 안되네요. 에고~ 어디가 문제일까요?
<?
function get_select_addr_si($name,$selected,$event){
global $g4;
function get_select_addr_si($name,$selected,$event){
global $g4;
$onchange = "";
if($event)$onchange = "onchange=\"$event\"";
if($event)$onchange = "onchange=\"$event\"";
$zipfile = array();
$fp = fopen($g4[bbs_path]."/zip.db", "r");
while(!feof($fp)) {
$zipfile[] = fgets($fp, 4096);
}
fclose($fp);
$str = "<select id='$name' name='$name' $onchange>\n";
$str .= "<option value=''>::지역::</option>\n";
$temp_si = "";
while ($zipcode = each($zipfile))
{
$temp_addr = explode(" ", substr($zipcode[1],8));
if($temp_si != $temp_addr[0]){
$select = "";
if($temp_addr[0]==$selected && $selected)$select = "selected";
$str.="<option value='".trim($temp_addr[0])."' $select>$temp_addr[0]</option>\n";
$temp_si = $temp_addr[0];
}
}
$fp = fopen($g4[bbs_path]."/zip.db", "r");
while(!feof($fp)) {
$zipfile[] = fgets($fp, 4096);
}
fclose($fp);
$str = "<select id='$name' name='$name' $onchange>\n";
$str .= "<option value=''>::지역::</option>\n";
$temp_si = "";
while ($zipcode = each($zipfile))
{
$temp_addr = explode(" ", substr($zipcode[1],8));
if($temp_si != $temp_addr[0]){
$select = "";
if($temp_addr[0]==$selected && $selected)$select = "selected";
$str.="<option value='".trim($temp_addr[0])."' $select>$temp_addr[0]</option>\n";
$temp_si = $temp_addr[0];
}
}
$str .="</select>\n";
return $str;
}
?>
<script language="JavaScript" id="DynamicC"></script>
<script language="JavaScript" id="DynamicD"></script>
<script language="javascript">
function makeD(firstLoc,secondLoc){
var ValueA = document.getElementsByName(firstLoc)[0].value;
DynamicC.src = "<?=$board_skin_path?>/makeSi2.php?selectA="+ValueA+"&secondLoc="+secondLoc;
}
}
?>
<script language="JavaScript" id="DynamicC"></script>
<script language="JavaScript" id="DynamicD"></script>
<script language="javascript">
function makeD(firstLoc,secondLoc){
var ValueA = document.getElementsByName(firstLoc)[0].value;
DynamicC.src = "<?=$board_skin_path?>/makeSi2.php?selectA="+ValueA+"&secondLoc="+secondLoc;
}
function makeE(firstLoc,secondLoc,thirdLoc){
var ValueA = document.getElementsByName(firstLoc)[0].value;
var ValueB = document.getElementsByName(secondLoc)[0].value;
DynamicD.src = "<?=$board_skin_path?>/makeDong2.php?selectA="+ValueA+"&selectB="+ValueB+"&thirdLoc="+thirdLoc;
}
// -->
</SCRIPT>
var ValueA = document.getElementsByName(firstLoc)[0].value;
var ValueB = document.getElementsByName(secondLoc)[0].value;
DynamicD.src = "<?=$board_skin_path?>/makeDong2.php?selectA="+ValueA+"&selectB="+ValueB+"&thirdLoc="+thirdLoc;
}
// -->
</SCRIPT>
<?=get_select_addr_si("wr_1",$wr_1,"makeD('wr_1','wr_2');")?>
<?if($wr_1) echo "<script language='javascript'>makeD('wr_1','wr_2');</script>";
?>
<select name="wr_2" onChange="makeE('wr_1','wr_2','wr_3')">
<option value="">::시/구/군::</option>
</select>
<?if($wr_2)echo "<script language='javascript'>document.getElementById('wr_2').value='$wr_2';makeE('wr_1','wr_2','wr_3');</script>";
?>
<?if($wr_1) echo "<script language='javascript'>makeD('wr_1','wr_2');</script>";
?>
<select name="wr_2" onChange="makeE('wr_1','wr_2','wr_3')">
<option value="">::시/구/군::</option>
</select>
<?if($wr_2)echo "<script language='javascript'>document.getElementById('wr_2').value='$wr_2';makeE('wr_1','wr_2','wr_3');</script>";
?>
<select name="wr_3">
<option value="">::동/읍/면::</option>
</select>
<?if($wr_3) echo "<script language='javascript'>document.getElementById('wr_3').value='$wr_3';</script>"; ?>
<input type="image" src="<?=$board_skin_path?>/img/btn_search.gif" border='0' align="absmiddle">
<option value="">::동/읍/면::</option>
</select>
<?if($wr_3) echo "<script language='javascript'>document.getElementById('wr_3').value='$wr_3';</script>"; ?>
<input type="image" src="<?=$board_skin_path?>/img/btn_search.gif" border='0' align="absmiddle">
답변 3
....
javascript 가 문제라고 판단하신다면 실행시 console창에 나타나는 에러가 없는지 확인하여
그 문제를 해결해 나가야 합니다.
또한 이와 같이 소스코드 만으로는 언급한 문제를 추적 해결하기 어렵습니다.
작업중인 사이트를 임시로 올려두시고 요청을 하시는 것이 좋습니다.
<select name="wr_2" id="wr_2"
<select name="wr_3" id="wr_3"
fsearch_set 함수가 있나 확인해 보세요
답변을 작성하시기 전에 로그인 해주세요.