0

Javascriptは私にとっては初めてですが、このような問題が発生するとは思いませんでした。私はこれを間違って行っているか、代わりにCookieを使用する必要があります。

私はjavascriptを使用して、リンクを介してPHPページにPOSTデータを送信しようとしています。私は以前にこのようなデータを渡す方法について質問しましたが、AJAXの他に、基本的には非表示のフォームを作成し、javascriptに送信させることになりました。今のところAJAXやJqueryについては何も知らないので、formメソッドを使い続けています。

しかし、何らかの理由で、コードは私のデータを投稿していませんでした。誤って2回続けてクリックすると、データが表示されるまで、理由がわかりませんでした。

シナリオは、データが移動するページに移動するリンクであり、データは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回ヒットして、正確に機能するまでは。

また、ページに移動するために1回クリックしてから、値が「まだそこになかった」かどうかを確認するために複数回更新してみました。何もない。

ここで何が起こっているのですか、どうすれば修正できますか?クッキーを使うほうがいいですか?

4

1 に答える 1

2

リンクにはhrefがあるので、そのURLにたどり着きます。

return false;関数の最後に追加しますred

または多分あなたはそれに追いかけるべきですonClick='red()'-onClick='red() return false;'しばらくの間それをそのように使用しませんでした。

于 2012-04-19T07:24:24.020 に答える