| 제목 | 데이터 수정 후 리로드시 오류 발생문제 해결방법이 있을까요? | ||
|---|---|---|---|
| 카테고리 | JavaScript | ||
| 글쓴이 | 정수리 | 작성시각 | 2016/12/02 09:32:36 |
|
|
|||
|
팝업창에 데이터를 등록하고 수정한 후 수정됐다는 알림창이 뜬후 팝업창이 닫히고 페이지 새로고침이 되도록 하였습니다. 그런데 알림창만 뜨고 팝업창은 하얀화면에 뜨고 페이지는 새로고침이 안되더군요 개발자 도구를 확인해 보니
수정 버튼을 클릭하고 알림창이 뜬후 Error: Permission denied to access property "reload"
이런 오류가 발생하더라구요;;
처음에는
$data = array();
foreach($this->input->post(null, true) as $key => $val) $data["{$key}"]= $val;
if(!empty($data['Twrite1'])){
$data['Twrite'] = $data['Twrite1'];
}
if(!empty($data['Ttype2'])){
$data['Ttype'] = $data['Ttype2'];
}
$result = $this->Gigwan_m->dm_modify($data);
if($result){
echo "
<meta http-equiv='Content-type' content='text/html; charset=utf-8'>
<script>alert('등록되었습니다');
window.opener.parent.location.reload();
window.close();
</script>";
}
}
이렇게 하다가 안되길래
echo "
<meta http-equiv='Content-type' content='text/html; charset=utf-8'>
<script>alert('등록되었습니다');
window.opener.parent.location.reload();
window.close();
</script>";
이부분을
$this->session->set_flashdata('message', '수정되었습니다.');
redirect('/gigwan_c/dm_modifypop/'.$data['Tno'].'/'.$data['gg_pk']);
이렇게 고쳐서 뷰페이지에서 script문 작성하였습니다.
하지만 똑같이 alert창까지만 뜨고 똑같은 에러가 발생하더라구요;
등록같은 경우도 수정하는 부분과 거이 똑같은데 등록했을 경우는 알림창도 잘뜨고 팝업창이 닫히고 페이지 새로고침까지 되는데...
무엇이 문제 이길래 저 오류가 발생하는것일까요??;
일단 제가 만든 모든 페이지의 경우 데이터를 등록하고 수정하는 방식은 위에서 말한 방식으로 이루어져있습니다. 유독 특정한페이지에서 수정부분만 이말썽을 일으키네요ㅜㅜ
|
|||
| 다음글 | 사이트 내 랜덤하게 무한 로딩에 빠지고 멈추는 현상의 ... (5) | ||
| 이전글 | ajax로 동기로 하는 방법에 대해 문의 (2) | ||
|
닉
/
2016/12/02 14:26:14 /
추천
0
|
|
닉
/
2016/12/02 14:34:35 /
추천
0
내용을 잘못이해했네요 .. 스크립트 에러인듯요..구글링 해보면 답 나오실듯 .. Permission denied to access property "reload" .. |
|
닉
/
2016/12/02 14:34:37 /
추천
0
내용을 잘못이해했네요 .. 스크립트 에러인듯요..구글링 해보면 답 나오실듯 .. Permission denied to access property "reload" .. |
요런건 그누보드에 /lib/common.php라는걸 보면 구현된 소스 나오는데요.
alert 한 후 페이지 이동같은 경우는 자주 쓰는 거니 lib이나 helper에 함수 만드셔서 그 함수를 호출하는 방향으로 개발해보세요~
저는 마나님이 만든거 보고 제 나름 커스텀 해서 사용하고 있어요..
constant.php define('RT_PATH', ''); // ex) /test//저는 헬퍼에 등록해서 오토로드 해놨어요. 전역적으로 사용하려고요. // 경고메세지를 경고창으로 function alert($msg='', $url='') { $CI =& get_instance(); if (!$msg) $msg = '올바른 방법으로 이용하세요.'; echo "<meta http-equiv=\"content-type\" content=\"text/html; charset=".$CI->config->item('charset')."\">"; echo "<script type='text/javascript'>alert('".$msg."');"; if (!$url) echo "history.go(-1);"; echo "</script>"; if ($url) goto_url($url); exit; } // 해당 url로 이동 function goto_url($url) { $temp = parse_url($url); if (empty($temp['host'])) { $CI =& get_instance(); $url = ($temp['path'] != '/') ? RT_PATH.'/'.$url : $CI->config->item('base_url').RT_PATH; } echo "<script type='text/javascript'> location.replace('".$url."'); </script>"; exit; }