2011-07-05 3 views
0

자바 스크립트 지식이 얕아서 중요한 Google 검색 결과 (물론 여기에서 검색)가 끝난 후에이 사실을 알 수 없으므로 이것이 내가 잘못하고있는 것의 원리에 대해서도 깨닫게되기를 바랍니다. 솔루션을 제공합니다.OnClick 페이지로드시 발생?

나는 토큰 체크 박스를 백엔드 데이터베이스에 쓰면서 레코드를 사용자의 응용 프로그램 '홈 페이지'에 저장할지 여부를 추적합니다. PHP 코드가 제대로 실행되고 사용자가 체크 상자를 클릭하면 OnClick 이벤트가 올바르게 시작됩니다 ...

예외 ... 또한 페이지가로드 될 때마다 실행됩니다. 즉, 페이지를 열면 이전에했던 것과 반대 방향으로 전환됩니다. 여기

이 떨어져 발사 년대 코드는 다음의 onclick이 때마다 페이지가로드를 트리거하는 이유

<form name="checkHomePage"> 
<?php 
    echo "<input "; 
    if (checkHomePage($_REQUEST['refnum']) == 1) {echo " checked='checked' ";} 
    echo " onClick='<?php echo ".toggleHomePage($_REQUEST['refnum']).";?>'"; 
    echo " type='checkbox'>Show On My Home Page</input>"; 
?> 
</form> 

내 인생, 내가 알아낼 수 없습니다. PHP 함수에는 JS 다운 스트림이 없으며 올바른 값을 반환합니다.

다른 데이터 :이 프로젝트에서는 OnClick 트리거와 같이 최소한의 JavaScript 만 사용할 수 있습니다. 또한 내부적으로 IE8과 9 만 사용하고 있습니다.

미리 감사드립니다.

답변

2

여기서 문제는 브라우저<?php echo 코드를 보내는 것입니다. 대신 다음을 사용하십시오.

<form name="checkHomePage"> 
<?php 
    echo "<input "; 
    if (checkHomePage($_REQUEST['refnum']) == 1) {echo " checked='checked' ";} 
    echo " onClick='toggleHomePage(".$_REQUEST['refnum'].")'"; 
    echo " type='checkbox'>Show On My Home Page</input>"; 
?> 
</form> 
+0

허! 나무 숲이 보이지 않는 것에 대해 이야기하십시오! –

+0

아아, 문제가 해결되지 않습니다. 이제는 HTML이 모르는 ""HTML 페이지에 php 함수를 보냅니다. " –

+0

'$ _REQUEST [ ' refnum ']'숫자? 그렇지 않다면 javascript에서도 따옴표가 필요합니다.'echo "onclick = 'toggleHomePage (\". $ _REQUEST ['refnum ']. "\")' " – Soumya