본문 바로가기

Local Oriented/jQuery

jQueryUI dialog input value 값 가져오는 방법

<div id="myPopup">

  <input type="text" name="key" id="key">

</div>


<script>

 $('#myPopup').dialog(...);

</script>


위와 같이 작업이 되어 있다고 할 때,

dialog 로 열린 key 에 대한 value 를 얻으려면 어떻게 해야 할까..?

$('#key').val() 이라 하면 된다구요..?

글쎄요, 그렇게 될까요..?

물론, 될 수도 있긴 하겠는데.. 어느 브라우저 어느 버전에서 되나요..?


그래서 찍어 봤습니다.

console.log($('#key'))

다른건 다 되는데 value 는 가져오지 못하네요.. ㅋㅋㅋ 이런 환장할.. ㅠ.


jQueryUI 의 dialog 로 열리는 곳에 input 태그를 ajax 로 넣어주는 방식에선 위와 같이 값이 추출 됩니다.

값을 매번 리셋하거나 열리는 dialog 에 DB 와 연동되는 값을 넣어야 하는 등등의 경우를 고려하건데,

ajax 를 이용한 방법이 훨씬 나아요.


그러나, 이번에는 하나의 .jsp 에 dialog 로 열리는 내용도 포함되어 있어서..

또, 열심히 찾아 봅니다.


어딘가 보니까 .dialog(...) 옵션에 appendTo:'form' 을 넣어라고..

췟 되긴 무슨... ㅠ.


또, 이리저리 찾다 보니.. 유레카.

$('#myPopup').find('input[name="key]').val() 와 같이 하면 되는군요.

이걸 매번 저렇게 사용할 수는 없으니까,

적당히 함수를 만들어서 사용하심 됩니다.