1

クリックするたびにボタンを作成しようとしています(Onclick)

<button onClick="showUser(<?php echo $b?>)">Back</button>

値 (数値) を変更して、情報を表示できる関数で数値を取得できるようにします。例 ボタンを次と後ろに呼び出しています。次のボタンをクリックすると、クリックするたびに値が増え続け、数字が大きくなると、その数字に応じて異なる情報にアクセスできるようになります。ボタンをクリックします (値は 1 になります) 情報が表示され、もう一度クリックすると (2) に増加し、他の情報を見ることができます。問題は、値を増加しようとするたびに、値が1回だけ増えます。

これを行っているのは、情報が表示されるようにするためであり、ユーザーがこれらのボタンを前後にクリックするたびに、データベースから取得した情報が順番に表示されます。私は javascipt、php、および sql を使用しています。

私が言っていることは可能ですか?

4

4 に答える 4

1

クリック時に更新する必要がある 2 つの変数を設定するオブジェクトを使用できます: var obj = { nextClicked : 0, prevClicked : 0 };

function buttonClick(type) {
    if(type == "prev") {
         obj.nextClicked++;
    }
    if(type == "next") {
         obj.prevClicked++
    }
}
<button type="button" onclick="buttonClick('next')">Next</button>
<button type="button" onclick="buttonClick('prev')">Prev</button>

ajax を使用しているため、ページを更新しない限り、変数はリセットされません。

于 2012-04-12T16:33:02.437 に答える
0

非表示フィールドを使用して値を保持し、onclick 関数を使用して値を増やしてフォームを送信します。

 <?

 if(!isset($_GET['count'])) {
  $count = 0;
  } else {
  $count = $_GET['count'];
  }

  ?>

   <script type='text/javascript'>
   function submitForm(x) {
     if(x == 'prev') {
     document.getElementById('count').value--;
     } else {
     document.getElementById('count').value++;
     }

     document.forms["form"].submit();
   }
   </script>

   <form action='hidfield.php' method='get' name='form'>
   <input type='hidden' name='count' id='count' value='<?php echo $count; ?>'>
   </form>

   <input type='submit' name='prev' value='prev' onclick="submitForm('prev')">
   <input type='submit' name='next' value='next' onclick="submitForm('next')">
于 2012-04-12T16:23:48.297 に答える
0

これを Web ページに追加し、数回更新します。

<?php
session_start();
echo $_SESSION['count']++;

ここでテストできます:

http://codepad.viper-7.com/qXdj8M

于 2012-04-12T16:24:21.770 に答える
0

PHPセッションを使用して、現在の「ページ」番号を保存し、クリックされたボタンに基づいて増減できます (ajax または単純なフォームを使用してイベント データを送信できます)。

于 2012-04-12T16:07:44.267 に答える