2012-04-19 3 views
0

글쎄 자바 스크립트는 제게 새로운 것이지만 이런 문제가 발생할 것이라고는 생각하지 않았습니다. 쿠키를 잘못 사용하거나 쿠키를 사용해야합니다.POST가 두 번째 시간 전까지 작동하지 않습니다

JavaScript를 사용하여 POST 데이터를 링크를 통해 PHP 페이지에 제출하려고합니다. 이전에 이런 식으로 데이터를 전달하는 방법에 대한 질문을 한 적이 있는데, AJAX 외에도 기본적으로 숨겨진 양식을 작성하고 자바 스크립트를 제출하는 방법이 있습니다. 지금 AJAX 나 Jquery에 대해서는 아무것도 모르므로 양식 메서드를 고수하고 있습니다.

그러나 어떤 이유로 코드가 내 데이터를 게시하지 않았습니다. 내가 우연히 그것을 두 번 연속 클릭 할 때까지 왜 데이터가 나타나는지 알 수 없었습니다.

시나리오는 데이터가 이동하는 페이지로 연결되는 링크이며, 데이터는 처리되고 var_dump를 통해 표시됩니다.

여기에 필요한 코딩이 있습니다.

function red() 
{ 
    alert('This is happening'); 
    document.traf.traf2.value = 3; 
    document.traf.submit(); 
} 

echo "<form name='traf' method='post' action='newphpwriterthing.php'><input type='hidden' name='traf2' /></form>"; //FORM SET 
echo "<a href='newphpwriterthing.php' onClick='red()'> <img src='red.png' height='150' /></a>"; 

기능은 잘 호출 할 것 같다,하지만 난 사고에 두 번을 칠 때까지 나는 가치와 제출 아무것도 ...을 수행되지 않았 음을 인상이었다 그것은 정확히 무엇을해야만 했는가.

한 번만 페이지를 보려면 클릭 한 다음 여러 번 새로 고쳐 값이 "아직 없었 음"인지 확인해보십시오. 아무것도.

여기에 무슨 일이 일어나고 있으며 어떻게 수정합니까 ?? 쿠키를 사용하는 것이 더 낫지 않습니까?

답변

2

링크를하면 href가있어서 그냥 그 URL로 연결됩니다.

red 기능 끝에 return false;을 추가하십시오.

어쩌면 당신은 onClick='red()' to onClick='red() return false;'을 chage해야합니다. 그런 식으로 사용하지 않았습니까?

+0

나는 그것을 깨달았습니다. 링크 URL을 빼앗아 그냥 #. 일하는 것 같습니다. 그것은 false로 돌아올뿐 아니라 작동합니까 ?? – user1159454

+0

네, 그게 효과가 있습니다. – kirilloid

+0

고맙습니다. – user1159454

관련 문제