쪽지보내기하나 질문드립니다.

쪽지보내기하나 질문드립니다.

QA

쪽지보내기하나 질문드립니다.

답변 4

본문

view.skin.php 페이지부분에 쪽지폼을 넣었습니다.....
 
$me_recv_mb_id=$view['mb_id'];
?>
<form name='fmemoform' method='post' enctype='multipart/form-data' onsubmit="return fwrite_check(document.fmemoform);">
<input type="hidden" name="me_recv_mb_id" value="<?=$me_recv_mb_id?>">
<textarea name='me_memo' rows='3'></textarea>
<input type='submit' value='쪽지보내기'>
</form>
<script language="JavaScript">
function fwrite_check(f)
{
 if (f.me_memo.value=='')
    {
        alert("내용을 입력하세요.");
        return false;
    }
    f.action = window.open('./memo_form_update.php', 'pop', 'width=700, height=800, scrollbars=1');
    f.submit();
}
</script>
 
이렇게요.
문제는 제대로 작동을 안합니다 ;;;;;;
일단 작동은 쪽지내용을 쓰고 버튼을 누르면
1. 부모페이지가 변경됩니다. 주소창에는 /bbs/[object%20Window] 이렇게 찍힙니다.
2. 새창은 띄워지나 주소창에 주소창에는 /bbs/memo_view.php?reid= 만 나오고 찾지못하네요.
3. 경고창이 뜹니다. "님에게 쪽지를 보냈습니다." 업데이트화일은 읽은거는 같은데 일단 이름이 안들어가지네요 ;;
4. 3번 확인누르면 잘못된 접근입니다라고 뜹니다 ;;
 
일단 원인은 찾아보겠지만 혹시 위 코드가 잘못된 부분이 있는지요?

이 질문에 댓글 쓰기 :

답변 4




<script language="JavaScript"> 

function fwrite_check(f) 
{ 

if (f.me_memo.value=='') 
    { 
        alert("내용을 입력하세요."); 
        return false; 
    } 
var popup = window.open("","pop", "width=700, height=800, scrollbars=1"); 
$(popup.document).load(function() {
    f.target = 'pop'; 
    f.action = "./memo_form_update.php"; 
    f.submit(); 
});
} 
</script> 


이렇게 해볼까요?
 action 안에 스크립트를 넣지 마세요

f.action = "memo_form_update.php";

이렇게 해주시면 되는데 그러면 보고있는 현재 페이지가 이동될껍니다.

그걸 원치 않으시면 다른 방법를 생각해보셔야 합니다.

네 view페이지가 이동되면 안되요 ;;;;;;
즉 쪽지보내기 버튼을 클릭하면 새창을 띄워 업데이트를 시킨뒤에 쪽지창이 뜨면 됩니다.
액션에 스크립트가 안된다니 어떤 방법을 생각해봐야할지;;;;;;;

본문에 숨어있는 아이프레임으로 보내고 그곳에서 처리하는 방법이 있고

 window.open('','memo_form','width=700,height=800, scrollbars=1');
 f.target = 'searchPop';
 f.action = '{경로}memo_form_update.php';
 f.submit();

식으로 될지 모르겠네요 테스트 해보지 않아서.

<script language="JavaScript">

function fwrite_check(f)
{

if (f.me_memo.value=='')
    {
        alert("내용을 입력하세요.");
        return false;
    }
window.open("","pop", "width=700, height=800, scrollbars=1");
    f.target = 'pop';
    f.action = "./memo_form_update.php";
    f.submit();
}
</script>


위와같이 적용하니 쪽지가 두번 업데이트가 되네요.......;;;;;;;;
즉 같은 내용이 두개가 들어가요.

 f.submit();  // 제거

답변 감사합니다..........

<script language="JavaScript">
function fwrite_check(f)
{
if (f.me_memo.value=='')
 {
 alert("내용을 입력하세요.");
 return false;
 }
window.open("","pop", "width=700, height=800, scrollbars=1");

 f.target = "pop";
 f.action = "./memo_form_update.php";

}
</script>

이렇게 하니 해결된것 같아요 ^^
k찰스님 슈와이님 감사합니다 ~ ^^

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 2,654
© SIRSOFT
현재 페이지 제일 처음으로