-1

フォームに関数を追加したいので、送信ボタンをクリックすると、ページを離れるのではなく関数が実行されます。

また、URLが必要なため、$_POSTを使用できません。

これが私のスクリプトです:

function submitclicked()
    {
    echo 'Hello World'; 

    }
    <form action="" method="post" id="TransactionAddForm">
    <input type="hidden" id="TransactionAccountID" value="'.$zpid.'" name="data[Transaction][account_id]">
    <input type="hidden" id="TransactionAmount" value="'.$_POST['price'].'" name="data[Transaction][amount]">
    <input type="hidden" id="TransactionDesc" value="'.$desc.'" name="data[Transaction][desc]">
    <input type="hidden" id="TransactionRedirectUrl" value="'.$backurl.'" name="data[Transaction][redirect_url]">
    <div class="submit"><input type="image" src="http://www.zarinpal.com/img/merchant/merchant-6.png" ></div>
    </form>;

あなたの助けのためのTnx。

4

2 に答える 2

2

あなたの基本的な理解には欠陥があります。PHPはサーバー側の言語です。つまり、サーバー側で実行されます。ボタンのクリックやブラウザのイベントをキャプチャすることはできません。クライアントからサーバーへのリクエストでのみ機能します。

関数は、フォームがサーバーに送信された後にのみ実行できます。

問題については、JavaScriptを使用してください。

また、ここにあるのはフォームではありません。ユーザーには、ここから選択できるフォームコントロールはありません。

于 2012-05-12T19:13:06.090 に答える
0

return false;送信時に呼び出す関数の最後にを追加します。このように、フォームは送信されません。buttonタイプではなくタイプである単純なボタンを追加することもできますsubmit。これらのボタンもフォームを送信しません。

-編集-送信ボタンをクリックするだけでJavaScript関数を呼び出したいと思います。もちろん、どのPHPもサーバーサイドです...

于 2012-05-12T19:12:22.460 に答える