私の PHP スクリプトはデータベースにクエリを実行し、行を li 要素として jQuery ダイアログの div に返します。これは、クエリ行の応答を処理する PHP の while ループで配列を作成することによって行われます。各 li 要素には、データ、HTML ボタン、およびボタンがクリックされたときにその li 要素で実行される JavaScript があります。
各 li 要素に同じ ID で「悪い HTML」を記述すると、JavaScript が実行されますが、最初の li 要素でのみ実行されます。各 li 要素に一意の ID を付けて「良い HTML」を作成すると、javascript を実行できません。私は多くのことを調査して試しましたが、これを修正するためにこれほど複雑なものは見つかりません。私は何をすべきか?これがコードを削除したものです。問題は長い $error_ListActives 行にあるようですが、私は提案を受け付けています。
$rowCount = 0;
while ($row = mysql_fetch_array($fetch)) {
$storedStreetAddress = $row["streetAddress"];
$storedCity = $row['city'];
$error_NumberOfActives = "<li>Welcome back. You have . . .</li>";
$errorMessages[0] = $error_NumberOfActives;
$idMaker = "inactive" . $rowCount;
$error_ListActives = "<li> $storedStreetAddress, $storedCity $idMaker
<button type='button' id=$idMaker onclick='makeInactive()'>Pause this</button>
<script type='text/javascript'>function makeInactive()
//do stuff
{document.getElementById($idMaker).innerHTML='Inactive Completed';}
</script> </li>";
$errorMessages[] = $error_ListActives;
$rowCount++;
}
foreach( $errorMessages as $statusMessage ) {
echo $statusMessage;
}
具体的にしてください。コードが役に立ちます。私は PHP の初心者なので、この分野の一般的な指示にはあまり従いません。