항목추가할수 있는 다중카테고리 크롬에서는 한번만실행돼고 안돼는이유? 정보
항목추가할수 있는 다중카테고리 크롬에서는 한번만실행돼고 안돼는이유?본문
프로그램 초보입니다.문제점이 생겨 문의드립니다.
ie6에서 잘작동되어 그런줄알았는데 크롬에서 실행해보니
한번만 작동되고 그후론 아무반응이 없어문의드립니다.
소스는 아래와같습니다.
(행을 여러개개추가시킨후 순서에 상관없이 딱 한번만실행됨)
innerHTML 로 무한정 input 태그를 생성하고 삭제할수있는데요(소스는생략)
추가버튼 눌러 행을 한개이상 출력하면 무조건 한번만 작동이돼고
그후론 아무것도 작동이안돼네요.
ie6에선 잘돼구요.
어느부분을 보안해야하는지 조언좀구해봅니다.
write.php
====================================================
<script type="text/javascript">
function selectMake(target,num) {
var obj;
alert(num);
if(target=='cate2'){
obj = document.getElementsByName('m_cate[]');
}
var trigger = obj[num].value; // 첫번째 selectbox의 선택된 값
dynamic.src = "category.data.php?trigger=" + trigger + "&target=" + target + "&num=" + num;
}
</script>
<table width='100%' border='0' cellpadding='5' cellspacing='0' class='style'>
<tr class=write_head>
<td align='center' width='27%' hegiht="25">대분류</td><td align='center' width='22%'>중분류</td><td align='center' width='18%'>제조사</td><td align='center' width='22%'>소프트명</td><td align='center' width='12%'>가 격</td><tr>
<tr>
<td bgcolor="#CFCFCF" height="1" colspan="5"></td>
</tr>
</table>
<table id="variableData" cellpadding=0 cellspacing=0 width="100%"></table>
<SCRIPT LANGUAGE="JavaScript">
<!--
var dten =0;
function add_data(delete_code){
var objTbl;
var objRow;
var objCell;
var m_cate;
var s_cate;
var cate_company;
m_cate = " <SELECT NAME='m_cate[]' onChange=selectMake('cate2','" + dten +"');>";
m_cate += "<option value=''>▒▒▒선택하세요▒▒▒</option>";
<?
$sql = " select num,cate_name from category order by num asc";
$result = sql_query($sql);
while ($rr = sql_fetch_array($result)){
?>
m_cate += "<option value='<?=$rr[num]?>' ><?=$rr[cate_name]?></option>";
<?}?>
m_cate += "</SELECT>";
s_cate = " <SELECT NAME='s_cate[]'>";
s_cate += "<option value=''>▒▒선택하세요▒▒</option>";
s_cate += "</SELECT>";
if (document.getElementById)
objTbl = document.getElementById("variableData");
else
objTbl = document.all["variableData"];
objRow = objTbl.insertRow(objTbl.rows.length);
objCell = objRow.insertCell(0);
var layer_html = "<table width='100%' border='0' cellpadding='5' cellspacing='0' class='style'>"
+ "<tr>"
+ "<td align='center' width='28%'>" + m_cate + "</td>"
+ "<td align='center' width='18%'>"+ s_cate +" </td>"
+ "<td width='15%'><input name='cate_company[]' type='text' class='boxborder' style='ime-mode:active' size='12'></td>"
+ "<td align='center' width='19%'><input name='cate_name[]' type='text' class='boxborder' style='ime-mode:active' size='15'></td>"
+ "<td align='center' width='18%'><input name='cate_price[]' type='text' class='boxborder' style='ime-mode:active' size='10' ></td>"
+"</tr>"
+ "</table>";
objCell.innerHTML = layer_html;
if (delete_code)
objCell.innerHTML += delete_code;
dten++;
}
add_data('');
</script>
category.php
========================================================
<?php
$trigger = $_GET['trigger'];
$target = $_GET['target'];
$num = $_GET['num'];
if ($target == 'cate2') {
$fview = "▒▒ 선택하세요 ▒▒";
$QQ = " cate_main_num = '$trigger' order by num asc";
$out = "num,cate_sub_name";
$out_key="num";
$out_value="cate_sub_name";
echo " var obj2= document.getElementsByName('s_cate[]');";
}
$sql = "SELECT ".$out." FROM category_sub where ".$QQ;
$result = sql_query($sql);
//$sql=mysql_fetch_array($res);
$sqlcount=mysql_num_rows($result);
$total=$sqlcount+1;
echo "obj2[$num].length = '$total'; \n";
$i=0;
echo "obj2[$num].options[$i].text = '$fview'; \n";
echo "obj2[$num].options[$i].value = ''; \n";
while ($rows = sql_fetch_array($result)){
$i++;
echo "obj2[$num].options[$i].text = '$rows[$out_value]'; \n";
echo "obj2[$num].options[$i].value = '$rows[$out_value]'; \n";
}
?>
ie6에서 잘작동되어 그런줄알았는데 크롬에서 실행해보니
한번만 작동되고 그후론 아무반응이 없어문의드립니다.
소스는 아래와같습니다.
(행을 여러개개추가시킨후 순서에 상관없이 딱 한번만실행됨)
innerHTML 로 무한정 input 태그를 생성하고 삭제할수있는데요(소스는생략)
추가버튼 눌러 행을 한개이상 출력하면 무조건 한번만 작동이돼고
그후론 아무것도 작동이안돼네요.
ie6에선 잘돼구요.
어느부분을 보안해야하는지 조언좀구해봅니다.
write.php
====================================================
<script type="text/javascript">
function selectMake(target,num) {
var obj;
alert(num);
if(target=='cate2'){
obj = document.getElementsByName('m_cate[]');
}
var trigger = obj[num].value; // 첫번째 selectbox의 선택된 값
dynamic.src = "category.data.php?trigger=" + trigger + "&target=" + target + "&num=" + num;
}
</script>
<table width='100%' border='0' cellpadding='5' cellspacing='0' class='style'>
<tr class=write_head>
<td align='center' width='27%' hegiht="25">대분류</td><td align='center' width='22%'>중분류</td><td align='center' width='18%'>제조사</td><td align='center' width='22%'>소프트명</td><td align='center' width='12%'>가 격</td><tr>
<tr>
<td bgcolor="#CFCFCF" height="1" colspan="5"></td>
</tr>
</table>
<table id="variableData" cellpadding=0 cellspacing=0 width="100%"></table>
<SCRIPT LANGUAGE="JavaScript">
<!--
var dten =0;
function add_data(delete_code){
var objTbl;
var objRow;
var objCell;
var m_cate;
var s_cate;
var cate_company;
m_cate = " <SELECT NAME='m_cate[]' onChange=selectMake('cate2','" + dten +"');>";
m_cate += "<option value=''>▒▒▒선택하세요▒▒▒</option>";
<?
$sql = " select num,cate_name from category order by num asc";
$result = sql_query($sql);
while ($rr = sql_fetch_array($result)){
?>
m_cate += "<option value='<?=$rr[num]?>' ><?=$rr[cate_name]?></option>";
<?}?>
m_cate += "</SELECT>";
s_cate = " <SELECT NAME='s_cate[]'>";
s_cate += "<option value=''>▒▒선택하세요▒▒</option>";
s_cate += "</SELECT>";
if (document.getElementById)
objTbl = document.getElementById("variableData");
else
objTbl = document.all["variableData"];
objRow = objTbl.insertRow(objTbl.rows.length);
objCell = objRow.insertCell(0);
var layer_html = "<table width='100%' border='0' cellpadding='5' cellspacing='0' class='style'>"
+ "<tr>"
+ "<td align='center' width='28%'>" + m_cate + "</td>"
+ "<td align='center' width='18%'>"+ s_cate +" </td>"
+ "<td width='15%'><input name='cate_company[]' type='text' class='boxborder' style='ime-mode:active' size='12'></td>"
+ "<td align='center' width='19%'><input name='cate_name[]' type='text' class='boxborder' style='ime-mode:active' size='15'></td>"
+ "<td align='center' width='18%'><input name='cate_price[]' type='text' class='boxborder' style='ime-mode:active' size='10' ></td>"
+"</tr>"
+ "</table>";
objCell.innerHTML = layer_html;
if (delete_code)
objCell.innerHTML += delete_code;
dten++;
}
add_data('');
</script>
category.php
========================================================
<?php
$trigger = $_GET['trigger'];
$target = $_GET['target'];
$num = $_GET['num'];
if ($target == 'cate2') {
$fview = "▒▒ 선택하세요 ▒▒";
$QQ = " cate_main_num = '$trigger' order by num asc";
$out = "num,cate_sub_name";
$out_key="num";
$out_value="cate_sub_name";
echo " var obj2= document.getElementsByName('s_cate[]');";
}
$sql = "SELECT ".$out." FROM category_sub where ".$QQ;
$result = sql_query($sql);
//$sql=mysql_fetch_array($res);
$sqlcount=mysql_num_rows($result);
$total=$sqlcount+1;
echo "obj2[$num].length = '$total'; \n";
$i=0;
echo "obj2[$num].options[$i].text = '$fview'; \n";
echo "obj2[$num].options[$i].value = ''; \n";
while ($rows = sql_fetch_array($result)){
$i++;
echo "obj2[$num].options[$i].text = '$rows[$out_value]'; \n";
echo "obj2[$num].options[$i].value = '$rows[$out_value]'; \n";
}
?>
댓글 전체