2010-03-12 5 views
0

누군가이 문제를 해결할 수 있습니까? 하나의 열에 하이퍼 링크로 된 텍스트가있는 JSP 페이지에 테이블이 있습니다. 이러한 하이퍼 링크 중 하나를 클릭 할 때마다 클릭 한 하이퍼 링크 값에 따라 전체 테이블을 새로 고쳐서 다시 채워야합니다. 내 문제는 현재 하이퍼 링크를 클릭하면 페이지가 빈 테이블로 새로 고침됩니다.JavaScript 함수를 호출하지 않는 HTML 하이퍼 링크

다음
<TD><A href="http://localhost:8080/pmweb/gui.jsp" onclick="getResults(param)">hyperlinktext</A></TD>; 

가 같은 JSP 페이지에서 자바 스크립트 내 getResults 기능은 다음과 같습니다 : 내 JSP 페이지에서이 작업을 수행하기위한 HTML 코드의 다음 줄을

<script type="text/javascript"> 
var httpRequest; 

function getResults(param) { 

    var url = "http://localhost:8080/pmweb/api/GetResultsByParam?param=" + param; 

    httpRequest = new XMLHttpRequest(); 

    httpRequest.open("GET", url, true); 

    httpRequest.onreadystatechange = function() {processRequest(); } ; 

    httpRequest.send(null); 
} 

내가 확인한 그 getResults 기능 위의 자체가 잘 작동합니다. 디버깅 할 때 하이퍼 링크를 클릭 할 때이 getResults 함수를 입력하지 않은 것으로 나타났습니다. 누구든지 하이퍼 링크를 제대로 자바 스크립트 함수를 호출하는 방법을 알아? 대단히 감사드립니다.

답변

1

당신이 호출 할 때 :

... 
<TD><A href="http://localhost:8080/pmweb/gui.jsp" 
    onclick="getResults(param)">hyperlinktext</A></TD>; 

'PARAM'는 'getResults (PARAM)'에 선언되지 않은됩니다. 대신에 어떤 가치를 전달합니다

... 
<TD><A href="http://localhost:8080/pmweb/gui.jsp" 
    onclick="getResults('name')">hyperlinktext</A></TD>; 
+0

안녕하세요, 답장을 보내 주셔서 감사합니다. Amarghosh가 getResults 메소드에서 false를 반환한다고 말하면 "return false;"라인을 추가하는 것입니다. 방법의 끝까지? 나는 그것을 시도했으나 효과가 없었다. 나는 같은 결과를 얻었다. 위의 코드에서 메서드와 변수 이름을 약간 수정했음을 유의하십시오. 나는 실제로 "param"에 대한 매개 변수로 실제 값을 파싱합니다. 건배! – liz

+0

나는 또한 코딩을 시도했다 : hyperlinktext; 이것도 작동하지 않았습니다 ... – liz

+0

URL에 리다이렉트하지 않습니다 :'return false' 문 때문에 !! "localhost : 8080/pmweb/gui.jsp".. 대신 getResults javascript 함수가 호출됩니다. 경고하는 것을 시도하십시오 ("들어가기"); ur 함수의 첫 번째 줄로 시도하고 ..'function getResults (value) {alert ("Getting In"); ... ...}' – raj

2

앵커를 클릭하면 그 href 속성에 지정된 페이지로 갈 수 있습니다. 이를 방지하려면 클릭 핸들러에서 false을 반환해야합니다.

hyperlinktext

그리고 getResults 방법에서 false을 반환합니다.

또한 raj가 지적한대로 param이 정의되어 있는지 확인하십시오.