2012-06-20 3 views
-2

내 사이트에 의견을 추가 할 수있는 블로그 페이지가 있습니다. 사실은 "덧글 추가"를 클릭하면 코멘트를 저장할 PHP 서버 요청이 있다는 것입니다. 그러면 페이지가 다시로드되고 맨 위로 스크롤됩니다. 코멘트를 추가 할 때 페이지 고정을 유지하는 자바 스크립트 방법이 있습니까?)자바 스크립트를 사용하여 페이지를 수정 하시겠습니까?

1의 URL 요청 후 앵커 이름을 사용

최저

당신은 당신의 코멘트 버튼이 함수를 호출 할 수 있습니다
+0

AJAX를 통해 덧글을 추가 할 수 있으므로 페이지를 새로 고침 할 필요가 없습니다. 또는 URL에서 앵커를 사용하여 사용자를 (거의) 같은 장소로 건너 뛸 수 있습니다. – Matt

+0

u AJAX를 사용해야합니다. – swapnesh

+0

AJAX를 사용하면 전체 페이지를 다시로드하지 않거나 페이지를로드 한 후 올바른 위치로 스크롤하는 javascript를 추가하십시오. – Matzi

답변

2

이 작업을 수행하는 두 가지 방법이 있습니다 클릭 페이지를 만들고 그 이름을 가진 앵커를 주석 아래 바로 위에 만듭니다.

<a name="comments" /> 

이 상단에 위치 앵커 DOM 요소로 페이지가 열립니다 : 그래서 앵커 이름 www.mysite.com/mypage.php#comments 및 광고를 HTML에서 앵커와 페이지로 리디렉션 화면의.

2) 서버에 ajax를 사용하여 데이터를 전송하고 성공적인 콜백을 검색 할 때 주석을 업데이트합니다. 페이지를 다시로드하지 않아도 그대로 유지됩니다. 하지만 조금 더 많은 작업이 필요합니다. 1 단계 : 요청을 처리하고 댓글을 저장하는 PHP 페이지 만들기 2 단계 : Ajax 호출을 만들고 콜백을 검색하는 자바 스크립트 추가

행운을 빈다!

0

function FUNCTIONNAME() { 
    $.ajax({ 
     type: "POST", 
     url: "YOUR METHOD NAME WHICH IS CALLED", 
     data: "{PARAMETER VALUES TO BE PASSED}", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     complete: function() { 
     }, 
     success: function (msg) {      
      alert("YOUR SUCCESS MESSAGE HERE"); 
     }, 
     error: function (msg) { 
      alert("Error "); 
     } 
    }); 
} 
+0

jQuery ... – madflow

+0

@madflow naah 또한 JAVASCRIPT와 AJAX를 사용할 수 있습니다 ... 나는 방금 간단하게 만들었습니다.) – swapnesh

+0

당신의 예제는 jQuery 객체를 사용합니다. 그게 무슨 뜻인지;) – madflow

1

쿠키를 사용할 수 있습니까? 텍스트 상자에 관해서도 비슷한 문제가 있습니다. 어디에서 "저장"(그리고 따라서 웹 페이지를 다시로드)을 치는 후, 항상 편집을 마친 곳이 아닌 첫 번째 줄에서 시작되었습니다.

해결책은 쿠키를 고용하는 것이 었습니다. 사용자가 "저장"을 클릭하면 간단한 자바 스크립트 코드가 편집기에서 커서가있는 위치에 쿠키를 쓰고있었습니다. 그런 다음 다시로드 한 후 다른 간단한 JavaScript가 해당 쿠키를 읽고 커서를 마지막 위치로 다시 설정합니다.

아마도이 솔루션을 필요에 맞게 사용할 수 있습니까?

+0

이것은 흥미로운 소리. 감사 ! – Newben

관련 문제