リンクでsubmitに関しての質問です。


リンクでsubmitしても、hiddenのvalue要素が送れません。

echoなど一応確認していますが、送れてません

他にリンクでsubmitしているものもあるのですが
それは動きます。
ただ、条件が少し違ってvalue要素を送ってはいません
それと、データベースから呼び出してphpで表示しています。

このような要素が含まれるとやり方が違うんでしょうか?

↓動かないsubmit部分です

while ($row = mysqli_fetch_array($data)){
echo "<form name='list' method='POST'action='".$_SERVER['PHP_SELF']."'>";
echo "<input type='hidden' name='list_view' value='". $row['list_name'] ."'>";
echo "<a href='#' onClick='document.list.submit();'>". $row['list_name'] ."</a></form>";
echo "<hr> ";


間違っている所を指摘してくださるか
このような条件で動くサンプルを教えてください

よろしくお願いします。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/11/12 06:37:36
  • 終了:2011/11/12 08:28:18

ベストアンサー

id:Cherenkov No.1

Cherenkov回答回数1503ベストアンサー獲得回数4932011/11/12 06:57:16

ポイント100pt

$rowの中身が複数あるとして、同じnameのformをいくつも並べているわけですよね。
リンクのsubmitがdocument.list.submit()なので始めのformだけのsubmitしかしていないのでは?


<?php
$row = mysqli_fetch_array($data);
foreach($row as $i => $e) {
  echo "<form name='list'" . $i . " method='POST'action='".$_SERVER['PHP_SELF']."'>";
  echo "<input type='hidden' name='list_view' value='". $e['list_name'] ."'>";
  echo "<a href='#' onClick='document.list" . $i . ".submit();'>". $e['list_name'] ."</a></form>";
  if (count($row) != $i+1) {
    echo "<hr> ";
  }
}

こんな感じでどうでしょうか。

他3件のコメントを見る
id:Cherenkov

フォーム名を変えたくない場合は質問文のdocument.list.submit()をthis.parentNode.submit()に変えるだけでいいかもしれませんね。

2011/11/12 07:52:33
id:robopit

フォームを変える方法ですが、ちょとうまくいかなかったのですが
this.parentNode.submit()で解決しました。
これは便利ですね。はじめて知りました。
ありがとうございました。

2011/11/12 08:28:05

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません