r

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

· 2010-01-10 (일) 19:36:47 · 10009 · 10
div내 다수의 input text 박스에 value값이 들어있는 상태에서

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

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

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

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

댓글 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 값이 없어진다는 건가요?
처음 듣는 얘긴데요?
2010-01-10 (일) 20:00:21
아뇨.. 기존의 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 태그를 추가하는 스크립트네요.
음 사라지는군요..

이럴땐.. 흠냥...

그냥 document.createElement 로 하시는게 어떠실지
2010-01-10 (일) 20:10:24
이미 돌리고 돌려서 되긴됐네요. 다음으로 패스할랍니다.ㅎㅎ
이미 누가 해놓은걸 버그잡는 중이라...ㅠ.ㅠ

근데 생각해보니 createElement로 해도 어차피 innerHTML를 해야하니 안될듯...
2010-01-10 (일) 20:08:15
자답입니다.;;

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

헙;;
헙!!! 가영이 사진이 저는 이제 바뀌어 보이네요???? 이긍~! 가영아빠님은 따님때문에 아주 녹아 내리시겠어요! 딸은 5세좀 지나면 아주 애교가 하늘을 찌른답니다.
2010-01-10 (일) 20:54:05
흐흐...많이 부러우시죠?ㅎㅎㅎㅎㅎㅎ
안그래도 나중에 시집 안보낼려구요..ㅎㅎㅎㅎㅎㅎㅎㅎ
저도 울 막내 절대로 시집 안보낼려구요...ㅎㅎㅎㅎㅎㅎ
2010-01-10 (일) 22:16:54
아..우리 어쩌죠......ㅠ__ㅠ
2010-01-11 (월) 12:39:54
두분 장인어른도 첨엔 그랬을겁니다 ㅋㅋㅋㅋ
댓글을 작성하시려면 로그인이 필요합니다.

자유게시판

203,017건
+
제목 글쓴이 날짜 조회
10-01-11 조회 1,837
10-01-11 조회 1,950
10-01-11 조회 1,623
10-01-11 조회 1,845
10-01-11 조회 1,882
10-01-11 조회 2,977
10-01-11 조회 1,583
10-01-11 조회 1,734
10-01-11 조회 2,186
10-01-11 조회 1,740
10-01-11 조회 2,250
10-01-11 조회 1,934
10-01-10 조회 2,850
10-01-10 조회 2,034
10-01-10 조회 1,513
10-01-10 조회 1,488
10-01-10 조회 1만
10-01-10 조회 1,934
10-01-10 조회 2,716
10-01-10 조회 1,848