예전에 작업했던 내용들을 기억/기록하기 위해 남기는 포스팅입니다.
폼 생성 및 Submit
function postFormMakeSubmit(actionUrl, params) {
$makeFrm = $('<form action="' + actionUrl + '" method="post"></form>');
for (var key in params) {
if (params.hasOwnProperty(key)) {
$makeFrm.append('<input type="hidden" name="' + key + '" value="' + params[key] + '"/>');
}
}
$('body').append($makeFrm);
$makeFrm.submit();
}
폼 생성 및 새창으로 Submit
function postFormMakeSubmitWindowOpen(actionUrl, params, targetName, openOption) {
try{
var pop = window.open('about:blank', targetName, openOption);
$makeFrm = $('<form action="' + actionUrl + '" method="post" target="' + targetName + '"></form>');
for (var key in params) {
if (params.hasOwnProperty(key)) {
$makeFrm.append('<input type="hidden" name="' + key + '" value="' + params[key] + '"/>');
}
}
$('body').append($makeFrm);
$makeFrm.submit();
pop.focus();
$makeFrm.remove();
} catch (e) { alert(e.message);}
}
사용 예 :
// 1.
function fn_ex1(param) {
postFormMakeSubmit('/path1/path2', { param: param });
}
// 2.
function fn_ex2(seq) {
postFormMakeSubmit('/path1/path2', $('#frm').serializeObject()); //#frm 은 form의 id
}
// 3.
function fn_ex3(param1, param2, param3) {
postFormMakeSubmitWindowOpen('/path1/path2',
{ param1: param1, param2: param2, param3: param3 },
'targetName', 'scrollbars=no, width=600, height=520');
}
'냐냐한 IT > 냐냐한 JavaScript' 카테고리의 다른 글
for 문으로 ajax 여러 번 호출, 모든 호출이 끝난 후 처리 (0) | 2022.01.11 |
---|---|
Layer를 화면 중간에 표시 (0) | 2020.03.22 |
JavaScript - CheckBox 전체 선택/해제 (0) | 2019.11.26 |
javascript 이벤트 취소(unbind) (0) | 2019.11.07 |
javascript(jquery)로 table 행 병합(rowspan) (0) | 2019.11.01 |