exec_xml('모듈명', '모듈액션', '파라메터', '완료되고 실행할 함수', response_tags?);
우선 제가 필요한 기능에 적합한 지 모르겠습니다.
제가 필요한 것은 자바스크립트로 문서번호를 기준으로 첨부된 파일의 주소를 가져오는 것 입니다.
이미 페이지가 불러온 후 실행될 액션이기 때문에, php로는 안돼서.. 찾아보던 중.. 왠지 저게 제가 필요한 것이 아닐까...
라고 생각이 들어서 찾아보고 있는데, 정확한 용법을 모르겠네요..
댓글 6
굳이 exec_xml, exec_json 쓰실 필요없이 $.ajax로 불러올 수 있어요.
아마 많은도움 되시리라 봅니다.
http://blog.naver.com/k_rifle/147519496
오오 덕분에 해결하였습니다.
제가 사용한 코드는 다음과 같습니다.
var responses = ['files'];
//실행함수.. exec_xml을 실행시키기 위해 임의로 담은 함수입니다..
function test()
{
//저는 확장변수에서 값을 입력을 받아서 해당 문서의 파일을 가져오기 위해 아래와 같이 사용했습니다.
var document_srl = jQuery('[name="extra_vars1"]').val(),
params = {upload_target_srl:document_srl};
//모듈명, 실행할함수, 건내줄변수, 리턴받을함수, 받아올 값,뒤에건 왜 또 넣는지 모르겠음;;
exec_xml('file', 'getFileList', params, callback_function, responses,params);
}
//exec_xml에서 받아오면 실행할 함수.
function callback_function(ret_obj, responses, params, form_object)
{
console.log(ret_obj['files'].item.download_url);
}
이렇게 하니 정상적으로 첨부파일 경로를 받아올 수 있었습니다.
방법을 찾으셨다니 다행입니다. 일단 이렇게 하셔도 됩니다. ^^
url: request_uri+'index.php',
type: 'POST',
data: {
module: 'file',
act: 'getFileList',
upload_target_url: $("input[name=extra_vars1]").eq(0).val()
},
dataType: 'json',
contentType: 'application/json'
})
.done(function (data) {
if(!data.files) return console.log(data.responseText);
data.files.forEach(function(array) {
console.log(array.download_srl);
});
//하나만 출력해야한다면(제일 마지막꺼)
var download_srl = data.files[data.files.length-1].download_url;
console.log(download_srl);
.fail(function (xhr) {
// (error)
console.log(xhr.responseText);
});
유용하게 사용하겠습니다^^