1


私は現在、ユーザーがウェブサイトで希望する支払いを選択するためのラジオ ボタンを用意しています。ユーザーは (請求書、カード、一部の支払い (?)) から選択できます。

スクリプトを使用してラジオ ボタンを送信しているのでボタンは必要ありませんが、別の支払いオプションを選択するたびにページがリロードされます。これは、フォームの値を入力するためにもう一度下にスクロールする必要があるため、顧客にとっては悪いことです (ラジオボタンを選択すると表示される電話番号など)。

そのため、いくつかの苦情の後、ページが更新されずにフォームが表示されるように、この問題を修正しようとしました。

これを可能にするために、スクリプトにいくつかの変更を加えることは可能ですか?

前もって感謝します。

私が使用するスクリプトは次のとおりです。

function autoSubmit(){
    var formObject = document.forms['choice_form'];
    formObject.submit();
}

PHP は次のとおりです。 // post の値を使用して、電話番号と電子メールを入力するフォームを表示します

<?php 
 $value = '';
  if(isset($_POST['choice'])) {
   $value = $_POST['choice'];
  }
?>

「ラジオ」フォームは次のとおりです。

<form name="choice_form" id="choice_form" method="post">
   <table>
     <tr>
      <td>
        <input type="radio" name="choice" <?php if ($value == 'faktura') { ?>checked='checked' <?php } ?> onChange="autoSubmit();" value="faktura"> Faktura
      </td>
    </tr>
    <tr>
      <td>
        <input type="radio" name="choice" <?php if ($value == 'kort-direkt') { ?>checked='checked' <?php } ?> onChange="autoSubmit();" value="kort-direkt"> Kort / Direktbetalning
      </td>
    <tr>
      <td>
        <input type="radio" name="choice" <?php if ($value == 'delbet') { ?>checked='checked' <?php } ?> onChange="autoSubmit();" value="delbet"> Delbetalning
      </td>
    </tr>
  </table>
</form>
4

1 に答える 1

2

支払いオプションが選択されるたびに、ラジオ ボタンの下に別のフォームを表示する必要がある場合は、すべてのフォームを個々の で非表示の状態でレンダリングし、オプションが選択されるたび<div>に対応するフォームを表示することができます。<div>

それよりも複雑なことを行う必要がある場合は、おそらく AJAX を使用する必要があります。

于 2013-11-04T14:54:32.700 に答える