innerHTML 했을경우 input 의 value값 초기화문제 > 자유게시판

자유게시판

innerHTML 했을경우 input 의 value값 초기화문제 정보

innerHTML 했을경우 input 의 value값 초기화문제

본문

div내 다수의 input text 박스에 value값이 들어있는 상태에서

innerHTML으로, += "<input type=text ... 을 추가 해줬을 경우 기존의 있던 input text의 value값이 사라지네요.

체크해보니, innerHTML할때 사라지는 걸로봐서... value값을 못가져오는거 같네요.

웃긴건 IE에서는 됩니다. 근데 크롬,파폭 나머지경우 value값을 못가져와 초기화시켜버리네요..

이해가 되실지 몰라도 혹 아시는분 계신가요?
추천
0

댓글 10개

<DIV id=aa>1234567890</DIV>
<SCRIPT>
document.getElementById('aa').innerHTML +="<input type='text' value='12' id='bb'>"
alert(document.getElementById('bb').value)
  </SCRIPT>
이렇게 하면 value 값이 없어진다는 건가요?
처음 듣는 얘긴데요?
아뇨.. 기존의 value값이 사라집니다.

<DIV id=aa><input type=text name=test value="asdf"></DIV>
<SCRIPT>
document.getElementById('aa').innerHTML +="<input type='text' value='12' id='bb'>"
alert(document.getElementsByName('test')[0].value) //asdf 값 사라짐
  </SCRIPT>
위와 같은 경우이고 asdf라는 기존 input 값이 사라지구요.. 즉, input 태그를 추가하는 스크립트네요.
이미 돌리고 돌려서 되긴됐네요. 다음으로 패스할랍니다.ㅎㅎ
이미 누가 해놓은걸 버그잡는 중이라...ㅠ.ㅠ

근데 생각해보니 createElement로 해도 어차피 innerHTML를 해야하니 안될듯...
자답입니다.;;

innerHTML하기전 input 태그 갯수를 구해 for문 돌려 값이있을경우만 체크해서 new Array변수에 담아놓고, innerHTML 후에 담아놓은 값을 다시 for문 돌려 document.getElementsByName()..에 담으면 되긴 되는군요.;;;;

헙;;
헙!!!  가영이 사진이 저는 이제 바뀌어 보이네요????  이긍~!  가영아빠님은 따님때문에 아주 녹아 내리시겠어요!  딸은 5세좀 지나면 아주 애교가 하늘을 찌른답니다.
전체 199,702 |RSS
자유게시판 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT