0

ボタンIDを取得することはできますか? フォームを蓄積しており、一意の ID を使用してボタンをクリックしてもらいたいと考えていました。私が使用した次のスクリプト:

echo("<table><tr>
    <td id=\"i\"><img src='presentations/uploaded_files/$name.png' alt='animal' width='50px' height='50px'/></td>
    <td id=\"n\">$name</td>
    <td id=\"d\">$dsc</td>
    <td id=\"t\">$type</td>
    <td id=\"g\">$grade</td>
    <td id=\"b\">
    <form enctype=\"multipart/form-data\" action=\"admin_update_animal.php\" method=\"POST\"><input type=\"submit\" value=\"Update\" name=\"update\" id=\"$name\"/></form></td>
</tr></table>");

ボタンのいずれかがクリックされたときに、次を使用しました。

if (isset($_POST['update'])) { 
$f=trim($_POST['update']);
}

しかし、割り当てられた一意の ID を使用してクリックされたボタンを取得したかったのです。私は助けてくれてとてもうれしいです。ありがとう。

4

2 に答える 2

1

名前は任意のメソッドを介してサーバー側スクリプトに渡されるため、コントロールのIDを直接読み取ることはできません。ボタンのidになる非表示の入力フィールドを使用できます。これにより、サーバー側のボタンのIDを知ることができます。これは次のように行うことができます:-

<script type="text/javascript">
  function createField(id)
  {
         var x = document.getElementById("hide");
         var y = "<input type='hidden' name='iddetector' value='"+id+"'/>";
         x.innerHTML = y;
        return;
  }
</script>
//maintain other stuffs here and now
<input type="submit" id="uniqueid" name="submit" value="submit"onClick="createField('uniqueid');return true;"/><br>
<div id="hide"></div>

You can detect the id of the button i the sever side as:-
 <?php
    $idButton = isset($_POST['iddetector'])?$_POST['iddetector']:NULL;
     echo "The id of the button clicked is ".$idButton;
  ?>
于 2013-09-29T05:45:25.760 に答える
0

経由して渡されるPOSTのは、nameではなく、コントロールのidです。ID を取得するには、送信前に JavaScript を使用することをお勧めします。

ポイントは、同じタスク (送信など) を実行する同じ名前 (ただし ID は異なる) の複数のコントロールをページのさまざまな場所に配置できることです。

于 2013-09-29T05:12:52.307 に答える