>> POST 전송, 결과값 리턴 (jQuery)
function post_s(href, parm, del) {
if (!del || confirm("한번 삭제한 자료는 복구할 방법이 없습니다.\n\n정말 삭제하시겠습니까?")) {
$.post(href, parm, function(req) {
document\.write(req);
});
}
}
// 예제
... onclick="post_s('경로', {'parm1':'val1','parm2':'val2'}, true);" ...
리턴값으로 document.location.replace('경로'); 등이 오면 되겠다. 3번째 요소는 삭제명령을 위한 것.
>> POST 이동
function post_goto(url, parm, target) {
var f = document.createElement('form');
var objs, value;
for (var key in parm) {
value = parm[key];
objs = document.createElement('input');
objs.setAttribute('type', 'hidden');
objs.setAttribute('name', key);
objs.setAttribute('value', value);
f.appendChild(objs);
}
if (target)
f.setAttribute('target', target);
f.setAttribute('method', 'post');
f.setAttribute('action', url);
document.body.appendChild(f);
f.submit();
}
// 예제
... onclick="post_goto('경로', {'parm1':'val1','parm2':'val2'}); return false;" ...
return false 를 넣지 않으면 IE6 에서 동작 안함. 아마도 버그?
>> POST 창
function post_win(name, url, parm, opt) {
var temp_win = window.open('', name, opt);
post_goto(url, parm, name);
}
// 예제
- 폼(form)이 이미 존재하는 경우 {
var f = document.form;
var win = window.open('', '네임', '옵션');
f.target = '네임';
f.action = '경로'
f.submit();
}
- 그렇지 않은 경우는 위 함수를 이용한다. {
... onclick="post_win('네임', '경로', {'parm1':'val1','parm2':'val2'}, '옵션');" ...
}
'Course > javaScript' 카테고리의 다른 글
[jQuery] 문단 차원으로 말줄임표 붙여 주는 플러그인 (0) | 2018.05.08 |
---|---|
trigger onload event when downloading a file in an iframe (0) | 2016.07.12 |
팝업 후 부모창 닫기 (0) | 2015.06.22 |
javascript checkbox checked 처리 ie, 크롬 다되는거 (0) | 2015.06.10 |
chrome(크롬)에서 location.href 가 안될 때 (0) | 2015.06.10 |