DJ메탈짱™의 Free Style

Jquery, Form에 Disabled되어 있는 컨트롤을 활성화하고 serialize()한 이후 다시 비활성화, #jquery, #find(), #removeAttr() 본문

일(job)/FRONT

Jquery, Form에 Disabled되어 있는 컨트롤을 활성화하고 serialize()한 이후 다시 비활성화, #jquery, #find(), #removeAttr()

뽀&쏭 2016. 5. 27. 11:24

브라우저 특성 타는건지 jquery 버전에 따라 다른건지 확실한 원인 파악은 안했지만.

form.serialize() 하는경우 disabled 되어 있는 놈은 serialize가 되지 않는 현상이 있음.

그래서 아래와 같이 serialize() 하기 이전에 disabled 풀어주고 serialize() 한 이후 다시 disabled 해주는 function 만들어서 사용함


/**

 * Form에 Disabled되어 있는 컨트롤을 활성화(disabled='false')하고 serialize()한 이후 다시 비활성화(disabled='true')

 * @param userForm

 * @returns param

 */

function fn_disabledSerialize(userForm){

var myform = $(userForm);

var disabled = myform.find(':input:disabled').removeAttr('disabled');

var param = myform.serialize();

disabled.attr('disabled','disabled');

return param;

}