자바스크립 고수님 들..ㅠ.ㅠ 도와주세요..
이런저런 이유로 요 몇일 스킨을 제작중인데요..ㅠ.ㅠ
스크립이...ㅜ.ㅜ 말을 안들어가...
innerHTML 로 테이블과 텍스트 박스 및 셀렉트 박스를 생성후
컨트롤 하려 하는데요.
이상하게 primary_key() 에서
var optionValue = document.create_table['create_field_name['+i+']'].value;
요넘을 못불러오네요..ㅠ.ㅠ
datetype()에서는
document.create_table["create_date_len["+j+"]"].value
요넘은 아주 잘 불러지고 있는데요..ㅠ.ㅠ
그런데 요넘두 primary_key() 요기로 가서 부르면 안오더라구요..ㅜ.ㅠ
뭘 잘못한건지 도저히 알수가없어서 자문을 구합니다..
아래는 소스 입니다.
<style>
.field_title {
height:30px;
color: #FFFFFF;
}
.field_text {
color: #333333;
}
</style>
<script>
var i = 0;
function add_field()
{
oRow0 = document.createElement('tr');
oRow1 = document.createElement('tr');
oCel0 = document.createElement('td');
oCel1 = document.createElement('td');
oCel2 = document.createElement('td');
oCel3 = document.createElement('td');
oCel4 = document.createElement('td');
oCel5 = document.createElement('td');
oRow0.style.textAlign='center';
oRow0.style.height='32';
oRow1.style.textAlign='center';
oCel5.height='1';
oCel5.bgColor='#e3dcd2';
oCel5.colSpan='5';
oCel0.className='cel0';
oCel1.className='cel1';
oCel2.className='cel2';
oCel3.className='cel3';
oCel4.className='cel4';
oCel5.className='cel5';
oRow1.appendChild(oCel5);
oRow0.appendChild(oCel0);
oRow0.appendChild(oCel1);
oRow0.appendChild(oCel2);
oRow0.appendChild(oCel3);
oRow0.appendChild(oCel4);
oRow0.appendChild(oRow1);
oCel0.innerHTML="#"+i;
oCel1.innerHTML="<input type='text' name='create_field_name["+i+"]' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='테이블명' required>";
oCel2.innerHTML="<select name='create_date_type["+i+"]' onChange='datetype(this.value, "+i+")' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='데이터 타입' required><option selected='selected'>DateType</option><option value='int'>INT</option><option value='char'>CHAR</option><option value='varchar'>VARCHAR</option><option value='text'>TEXT</option></select>";
oCel3.innerHTML="<input type='text' name='create_date_len["+i+"]' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='문자길이'>";
oCel4.innerHTML="<select name='create_not_null["+i+"]' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='NULL'><option value='n'>NOT NULL</option><option value='y' selected='selected'>NULL</option></select>";
oCel5.innerHTML="";
document.getElementById('table_field').children(0).appendChild(oRow0);
document.create_table.field_count.value=i;
i++;
}
function del_field()
{
var tbody = document.getElementById('table_field');
if(tbody.rows.length > 4) {
tbody.deleteRow(tbody.rows.length-2);
i--;
document.create_table.field_count.value=i;
}else{
alert("최소 1개이상의 Field 가 있어야 합니다.");
}
}
function primary_key()
{
var p_count = document.create_table.field_count.value;
var key_count = document.create_table.create_primary_key.length;
for(i=0; i==p_count; i++)
{
var optionValue = document.create_table['create_field_name['+i+']'].value;
if(!optionValue)
{
alert("#"+i+"번 Field Name 이 존재 하지 않습니다.");
}else{
for (d=0; d < key_count; d++){
document.create_table.create_primary_key.options.remove(0);
}
var newItem = new Option;
newItem.text = optionValue;
newItem.value = optionValue;
document.create_table.create_primary_key.options[document.create_table.create_primary_key.length]=newItem;
}
}
}
function datetype(type, j_no)
{
var j = j_no;
var type = type;
var date_type_len = "int-4^char-8^varchar-80^text-65535";
var date_type = date_type_len.split("^");
for(f=0; f<date_type.length; f++)
{
var date_len = date_type[f].split("-");
if(date_len[0] == type)
{
document.create_table["create_date_len["+j+"]"].value = date_len[1];
}
}
}
</script>
<body onLoad="add_field()">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class='ht'>
<td align=left><?=subtitle("Db 생성")?></td>
</tr>
<tr>
<td class=line1>
</td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> </td>
</tr>
<form name="create_table" method="post" action="<?=$g4['admin_path']?>/create_table_update.php">
<input name="field_count" type="hidden" value=0><input name="field_namelist" type="hidden" value="Primary Key 를 선택해주세요">
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" align="center">Table Name</td>
<td>
<input type="text" name="create_table_name" style="width:300px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="Table Name" required>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td height="1" bgcolor="#CCCCCC"></td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">Date Field 추가</td>
</tr>
<tr>
<td height="5" align="center"></td>
</tr>
<tr>
<td align="center"><span onClick="add_field();" style="cursor:pointer;">+</span> <span onClick="del_field();" style="cursor:pointer;">-</span></td>
</tr>
</table></td>
<td>
<table border="0" id="table_field" cellspacing="1" cellpadding="0">
<tr>
<td width="50" align="center" bgcolor="#CBB08D" class="field_title">NO</td>
<td width="200" align="center" bgcolor="#CBB08D" class="field_title">Field Name</td>
<td width="180" align="center" bgcolor="#CBB08D" class="field_title">Date Type</td>
<td width="100" align="center" bgcolor="#CBB08D" class="field_title">Date length</td>
<td width="120" align="center" bgcolor="#CBB08D" class="field_title">NULL</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td height="1" bgcolor="#CCCCCC"></td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" align="center">PRIMARY KEY</td>
<td>
<select name="create_primary_key" onFocus="primary_key()" style="width:160px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="PRIMARY KEY" required>
<option selected>Primary Key</option>
</select>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td class=line1>
</td>
</tr>
<tr>
<td align="right"><input type="submit" name="button" id="button" value="Table 생성" /></td>
</tr>
<tr>
<td> </td>
</tr>
</form>
</table>
</td>
</tr>
</table>
스크립이...ㅜ.ㅜ 말을 안들어가...
innerHTML 로 테이블과 텍스트 박스 및 셀렉트 박스를 생성후
컨트롤 하려 하는데요.
이상하게 primary_key() 에서
var optionValue = document.create_table['create_field_name['+i+']'].value;
요넘을 못불러오네요..ㅠ.ㅠ
datetype()에서는
document.create_table["create_date_len["+j+"]"].value
요넘은 아주 잘 불러지고 있는데요..ㅠ.ㅠ
그런데 요넘두 primary_key() 요기로 가서 부르면 안오더라구요..ㅜ.ㅠ
뭘 잘못한건지 도저히 알수가없어서 자문을 구합니다..
아래는 소스 입니다.
<style>
.field_title {
height:30px;
color: #FFFFFF;
}
.field_text {
color: #333333;
}
</style>
<script>
var i = 0;
function add_field()
{
oRow0 = document.createElement('tr');
oRow1 = document.createElement('tr');
oCel0 = document.createElement('td');
oCel1 = document.createElement('td');
oCel2 = document.createElement('td');
oCel3 = document.createElement('td');
oCel4 = document.createElement('td');
oCel5 = document.createElement('td');
oRow0.style.textAlign='center';
oRow0.style.height='32';
oRow1.style.textAlign='center';
oCel5.height='1';
oCel5.bgColor='#e3dcd2';
oCel5.colSpan='5';
oCel0.className='cel0';
oCel1.className='cel1';
oCel2.className='cel2';
oCel3.className='cel3';
oCel4.className='cel4';
oCel5.className='cel5';
oRow1.appendChild(oCel5);
oRow0.appendChild(oCel0);
oRow0.appendChild(oCel1);
oRow0.appendChild(oCel2);
oRow0.appendChild(oCel3);
oRow0.appendChild(oCel4);
oRow0.appendChild(oRow1);
oCel0.innerHTML="#"+i;
oCel1.innerHTML="<input type='text' name='create_field_name["+i+"]' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='테이블명' required>";
oCel2.innerHTML="<select name='create_date_type["+i+"]' onChange='datetype(this.value, "+i+")' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='데이터 타입' required><option selected='selected'>DateType</option><option value='int'>INT</option><option value='char'>CHAR</option><option value='varchar'>VARCHAR</option><option value='text'>TEXT</option></select>";
oCel3.innerHTML="<input type='text' name='create_date_len["+i+"]' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='문자길이'>";
oCel4.innerHTML="<select name='create_not_null["+i+"]' style='width:100%; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;' itemname='NULL'><option value='n'>NOT NULL</option><option value='y' selected='selected'>NULL</option></select>";
oCel5.innerHTML="";
document.getElementById('table_field').children(0).appendChild(oRow0);
document.create_table.field_count.value=i;
i++;
}
function del_field()
{
var tbody = document.getElementById('table_field');
if(tbody.rows.length > 4) {
tbody.deleteRow(tbody.rows.length-2);
i--;
document.create_table.field_count.value=i;
}else{
alert("최소 1개이상의 Field 가 있어야 합니다.");
}
}
function primary_key()
{
var p_count = document.create_table.field_count.value;
var key_count = document.create_table.create_primary_key.length;
for(i=0; i==p_count; i++)
{
var optionValue = document.create_table['create_field_name['+i+']'].value;
if(!optionValue)
{
alert("#"+i+"번 Field Name 이 존재 하지 않습니다.");
}else{
for (d=0; d < key_count; d++){
document.create_table.create_primary_key.options.remove(0);
}
var newItem = new Option;
newItem.text = optionValue;
newItem.value = optionValue;
document.create_table.create_primary_key.options[document.create_table.create_primary_key.length]=newItem;
}
}
}
function datetype(type, j_no)
{
var j = j_no;
var type = type;
var date_type_len = "int-4^char-8^varchar-80^text-65535";
var date_type = date_type_len.split("^");
for(f=0; f<date_type.length; f++)
{
var date_len = date_type[f].split("-");
if(date_len[0] == type)
{
document.create_table["create_date_len["+j+"]"].value = date_len[1];
}
}
}
</script>
<body onLoad="add_field()">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class='ht'>
<td align=left><?=subtitle("Db 생성")?></td>
</tr>
<tr>
<td class=line1>
</td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td> </td>
</tr>
<form name="create_table" method="post" action="<?=$g4['admin_path']?>/create_table_update.php">
<input name="field_count" type="hidden" value=0><input name="field_namelist" type="hidden" value="Primary Key 를 선택해주세요">
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" align="center">Table Name</td>
<td>
<input type="text" name="create_table_name" style="width:300px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="Table Name" required>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td height="1" bgcolor="#CCCCCC"></td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">Date Field 추가</td>
</tr>
<tr>
<td height="5" align="center"></td>
</tr>
<tr>
<td align="center"><span onClick="add_field();" style="cursor:pointer;">+</span> <span onClick="del_field();" style="cursor:pointer;">-</span></td>
</tr>
</table></td>
<td>
<table border="0" id="table_field" cellspacing="1" cellpadding="0">
<tr>
<td width="50" align="center" bgcolor="#CBB08D" class="field_title">NO</td>
<td width="200" align="center" bgcolor="#CBB08D" class="field_title">Field Name</td>
<td width="180" align="center" bgcolor="#CBB08D" class="field_title">Date Type</td>
<td width="100" align="center" bgcolor="#CBB08D" class="field_title">Date length</td>
<td width="120" align="center" bgcolor="#CBB08D" class="field_title">NULL</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td height="1" bgcolor="#CCCCCC"></td>
</tr>
<tr>
<td height="5"></td>
</tr>
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" align="center">PRIMARY KEY</td>
<td>
<select name="create_primary_key" onFocus="primary_key()" style="width:160px; background-color:#f6f6f6; border:1px solid #d8d8d5; height:21px;" itemname="PRIMARY KEY" required>
<option selected>Primary Key</option>
</select>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td class=line1>
</td>
</tr>
<tr>
<td align="right"><input type="submit" name="button" id="button" value="Table 생성" /></td>
</tr>
<tr>
<td> </td>
</tr>
</form>
</table>
</td>
</tr>
</table>
댓글 2개
17년 전
for문이 잘못된것 같은데요..
for(i=0; i<=p_count; i++)
이처럼 작성해야 할것 같습니다..
그럼 optionValue는 잡아 내는데..
오타이신것 같네요.. ㅎㅎ
for(i=0; i<=p_count; i++)
이처럼 작성해야 할것 같습니다..
그럼 optionValue는 잡아 내는데..
오타이신것 같네요.. ㅎㅎ
17년 전
오타
게시판 목록
토크
개발과 관련된 어떤 얘기도 괜찮습니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 360 | 15년 전 | 1093 | ||
| 359 | 15년 전 | 1871 | ||
| 358 | 15년 전 | 1532 | ||
| 357 | 15년 전 | 1039 | ||
| 356 | 15년 전 | 1082 | ||
| 355 | 15년 전 | 1358 | ||
| 354 | 15년 전 | 1264 | ||
| 353 | 15년 전 | 1414 | ||
| 352 |
|
15년 전 | 1161 | |
| 351 |
|
15년 전 | 969 | |
| 350 | 15년 전 | 986 | ||
| 349 |
|
15년 전 | 1136 | |
| 348 | 15년 전 | 1035 | ||
| 347 |
|
15년 전 | 1145 | |
| 346 | 15년 전 | 978 | ||
| 345 | 15년 전 | 1090 | ||
| 344 | 15년 전 | 2242 | ||
| 343 |
|
15년 전 | 1191 | |
| 342 | 15년 전 | 1776 | ||
| 341 |
terrorboys
|
15년 전 | 1133 | |
| 340 | 15년 전 | 2261 | ||
| 339 | 15년 전 | 1297 | ||
| 338 |
terrorboys
|
15년 전 | 1751 | |
| 337 |
진정한승리
|
15년 전 | 1047 | |
| 336 |
windday
|
15년 전 | 1309 | |
| 335 |
진정한승리
|
15년 전 | 1154 | |
| 334 |
dannykim
|
15년 전 | 1045 | |
| 333 | 15년 전 | 1254 | ||
| 332 |
|
15년 전 | 1327 | |
| 331 |
|
15년 전 | 1081 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기