asp+jsp+JavaScript 동적 데이터 줄 추가

응용 프로그램의 개발 에서 일부 입력 정 보 는 동태 적 인 것 이다.예 를 들 어 우 리 는 한 직원 의 업무 경력 을 등록 해 야 한다.예 를 들 어 다음 그림 이다.

죽은 것 으로 만 들 면 세 개 만 쓸 수 있 고 네 개 라면?또는 더 많은 것 은 추가 할 수 없 는 것 이 아 닙 니까?그래서 이렇게 하 는 것 도 좋 지 않 습 니 다.우 리 는 표 줄 을 동적 으로 추가 하여 실현 할 수 있 습 니 다.다음 그림 에서 한 줄 을 추가 하고 한 줄 의 정 보 를 입력 하 는 것 이 비교적 유연 합 니 다.

asp 와 asp.net 에서 자바 script 을 결합 하여 이 효 과 를 실현 하 는 방법 을 살 펴 보 겠 습 니 다.
우선,동적 추가 표 는 프론트 데스크 에서 이 루어 져 야 합 니 다.물론 백 스테이지 도 가능 하지만 ajax 를 사용 해 야 할 수도 있 습 니 다.귀 찮 으 므 로 자바 script 으로 이 루어 지 는 것 이 좋 습 니 다.다음은 동적 추가 표 줄 의 두 가지 방식 을 소개 합 니 다.
첫 번 째:소스 코드
Javascript:

 <script type="text/javascript">
 /**//*This function is use to add one row dynamicly 
* tabObj : Target table 
* colNum: The number of columns that of a row in table 
* sorPos: The source of the new row. 
* targPos: The position where the new row will be added. 
* 
*/ 
function addRow(tabObj,colNum,sorPos,targPos){ 
var nTR = tabObj.insertRow(tabObj.rows.length-targPos); // Insert a new row into appointed table on the 
//appointed position. 
var TRs = tabObj.getElementsByTagName('TR'); // Get TRs collection from the appointed table 
var sorTR = TRs[sorPos]; // Positioned the sorTR 
var TDs = sorTR.getElementsByTagName('TD'); // Get TDs collection from the appointed row 
if(colNum==0 || colNum==undefined || colNum==isNaN){ 
colNum=tabObj.rows[0].cells.length; 
} 

var ntd = new Array(); // Create a new TDs array 
for(var i=0; i< colNum; i++){ // Traverl the TDs in row 
ntd[i] = nTR.insertCell(); // Create new cell 
ntd[i].id = TDs[0].id; // copy the TD's id to new cell. | Attention! The TDs's 
//suffix must be appointed 
ntd[i].innerHTML = TDs[i].innerHTML; // copy the value in ntd[i]'s innerHTML from corresponding TDs 
} 

} 
/**//* This function is use to remove appointed row in appointed table 
* tabObj: the appointed table 
* targPos: target row position 
* btnObj: currently clicked delete image button 
* 
*/ 
function deleteRow(tabObj,targPos,btnObj){ //Remove table row 
for(var i =0; i<tabObj.rows.length;i++){ 
if(tabObj.getElementsByTagName('img')[i]==btnObj){ 
tabObj.deleteRow(i+targPos); 
} 
} 
} 
</script>
Html

<table id=tabUserInfo border=1 width="720"> 
<tr> 
 <td>  </td>
 <td>  </td>
 <td>  </td>
 <td>  </td>
<td>Delete</td> 
</tr> 
<tr style="display:none" id=trUserInfo> 
<td id=tdUserInfo><input id=username name=username ></td> 
<td id=tdUserInfo><input id=usersex name=usersex></td> 
<td id=tdUserInfo><input id=userage name=userage></td> 
<td id=tdUserInfo><input id=userlove name=userlove></td> 
<td id=tdUserInfo>
<img alt="Delete" onClick="deleteRow(document.all.tabUserInfo,1,this)">
</td> 
</tr> 
<tr> 
<td>

<input type=button value="Add" onClick="addRow(document.all.tabUserInfo,null,1,1)"></td> 
</tr> 
</table> 
여기 서 주의해 야 할 것 이 있 습 니 다:

좋은 웹페이지 즐겨찾기