0
私はクリック時にフォームを更新する次のコードを持っています。タイトルとコンテンツを入力すると、うまく動作します。私がstartDateを追加すると、何も入力されません。私の構文の中に何かが間違っていると仮定して、私はすべての論理が正しいように見えます。何か不足していますか?JSが値渡しに失敗しましたか?
<script type="text/javascript">
function changeText(title, content, startDate){
window.alert("test");
document.getElementById('startDate').value = document.getElementById(startDate).getAttribute('data-content');
document.getElementById('content').value = document.getElementById(content).getAttribute('data-content');
document.getElementById('title').value = document.getElementById(title).getAttribute('data-content');
}
</script>
<?php
foreach ($announcement as $row){ //Displays title, startDate, endDate from announcement table from database
$tile = ($row["announcementID"] ."t");
$cont = $row["announcementID"];
$startDate = ($row["announcementID"] ."s");
echo "<h2 style=width:auto;padding:8px;margin-top:-30px;font-size:18px;><a style=text-decoration:none;color:#c4572f; >".$row["title"]."</a></h2><br>";
echo "<p style=padding-top:10px;>".$row["content"]."</p><br>";
echo "<p style=font-size:10px;>Posted: ".$row["startDate"]."</p><br>";
echo '<input id="'.$tile.'" data-content="'.$row["title"].'" type=button class=test onclick="changeText(id, '.$cont.', '.$startDate.');" value="Edit">';
echo '<p id="'.$cont.'" data-content="'.$row["content"].'">test</p>';
echo '<p id="'.$startDate.'" data-content="'.$row["startDate"].'">startDate</p>';
echo "<h5 style=line-height:2px;margin-top:-15px;><p>_____________________________________</p></h5><br>";
}
?>
そのような文字列は、災害のためのレシピのように見えます。少なくとも、PHPデータをページにJSONエンコード文字列として出力することをお勧めします。 – elclanrs