Please Enable JavaScript!
Gon[ Enable JavaScript ]

반응형

자바스크립트(javascript) 배열로 구성하여 input 객체에 넣고 POST 넘겼을때 

개발환경 : window 7 64bit

javascript 에서 배열로 구성하여 input 객체에 넣고

POST 넘겼을때 서버에서 수신하는 형태는
HttpServletRequest
객체는 ',,...' 형태의

String 으로 받게 됩니다.
그래서 각각의 값을 split 로 분리해서 사용할 필요가 있다
.

아래의 소스를 설명하자면 클라이언트는 리스트

박스에 값을 배열에 하나씩 넣어서 Input 박스인
arrMenuValue, arrMenuText 
두 개에 각각 select option

요소값인 value text 값 전체를 넘긴다.
그리고 서버로 POST 전송하게 된다.
 

function doPage(thisForm, url){

       var form = thisForm;

       var selSize = form.selMenu.length;

       var arrValue = new Array(selSize);

       var arrText = new Array(selSize);

      

       for (i = 0; i < selSize; i++){

              var selValue = form.selMenu.options[i].value;

              var selText = form.selMenu.options[i].text;

             

              arrValue[i] = selValue;

              arrText[i] = selText;

       }

       form.arrMenuValue.value = arrValue;

       form.arrMenuText.value = arrText;

       form.method = "POST";

       form.action = url;

       form.submit();

}

서버쪽에서는 ',,...' 형태로 된 String 문자열을 split

함수로 분리해서 String[] 저장하여 활용하면된다. 

/** 넘어온 리스트를 저장한다 */

String selMenuValue = request.getParameter("arrMenuValue");

String selMenuText = request.getParameter("arrMenuText");

 

String[] arrSelMenuValue = selMenuValue.split(",");

String[] arrMenuText = selMenuText.split(",");

반응형
Posted by 녹두장군1
,