2017-03-16 6 views
1

私は初心者プログラマーです。各行のボタンをクリックすると、データを選択して更新する必要があります。今すぐデータを選択して表示することができますが、最初の更新ボタンが機能しています。私はこの問題の原因はボタンIDが同じだと思う。一意のIDを作成する方法を理解できません。あなたはむしろクラスを使用することができます各行のボタンをクリックするとデータが更新されます

$sql = $connectdb->query($checknode); 
$i = 0; 
    echo "<table border=1>"; 
    if (!$sql) { 
     echo $connectdb->error; 
    else { 
     while ($row=$sql->fetch_row()) { 
      $crow = "updatedb".$i; 
      //echo $crow."<br />"; 
      echo "<form method='post' action=''>"; 
      echo '<tr><td>'.$row[0].' 
      </td><td>'.$row[1].'</td><td>'.$row[2].' 
      </td><td>'.$row[3].'</td><td>'.$row[4].' 
      </td><td>'.$row[5].'</td><td> 
      <input type="button" id="updatedb" name="updatedb" value="update"> 
      <input type="text" id="textstatus" name="textstatus" 
      value="" disabled="disabled"></td></tr>'; 
      $i++; 
     } 
    } 
echo "</form>"; 
echo "</table>"; 
+0

'' id = "updatedb" 'を' class = "updatedb" 'に変換します。あなたのjQueryコードは何のタイプの更新も行いません –

+0

@AlivetoDie今のところ、ボタンをクリックすると、ボタンをテキストフィールドに挿入するだけで機能をテストします。 – HeAu

答えて

1

:ある

$(function(){ 
      $('#updatedb').click(function(){ 
       var a = $('#updatedb').attr('id');     
       $('#textstatus').val(a); 
       alert ($('#updatedb').attr('id')); 
      }); 
    }); 

とPHP:私は= "$ I" と何が

私のスクリプトがある作業IDにID = "はupdatedb" に変更してみてください次いで

jqueryの

$(function(){ 
      $('.updatedb').click(function(){ 
       var a = $(this).attr('class');     
       $(this).parents('tr').find('.textstatus').val(a); 
       alert (a); 
      }); 
    }); 
以下のコードを参照して更新するためのボタンのIDを

php

$sql = $connectdb->query($checknode); 
$i = 0; 
    echo "<table border=1>"; 
    if (!$sql) { 
     echo $connectdb->error; 
    }else 
     { 
     while ($row=$sql->fetch_row()) { 
      $crow = "updatedb".$i; 
      //echo $crow."<br />"; 
      echo "<form method='post' action=''>"; 
      echo '<tr><td>'.$row[0].' 
      </td><td>'.$row[1].'</td><td>'.$row[2].' 
      </td><td>'.$row[3].'</td><td>'.$row[4].' 
      </td><td>'.$row[5].'</td><td> 
      <input type="button" class="updatedb" name="updatedb" value="update"> 
      <input type="text" class="textstatus" name="textstatus" 
      value="" disabled="disabled"></td></tr>'; 
      $i++; 
     } 
    } 
echo "</form>"; 
echo "</table>"; 
+0

'$(this)).next( '。textstatus').val (a); '$(this).parents( 'tr')の代わりにfind( '。textstatus')。オーバーヘッドが少ない –

関連する問題