I have been trying to solve this for some time now so any help would be greatly appreciated.
I have a HTML table that loops and displays records. the last 2 columns are approve or reject hyperlinks (each run a different script for the according action. This passes the .row data for ticket number through the URL (works fine).
What I have done now is added a column before hand containing a text area which I wish to use to add comments and send the comments to next page also when click the link. I have tried PHP and Javascript get element by id but do not seem to be able to make it work. I am trying to pass id="feedback_comments"
while ($row = sqlsrv_fetch_array($stmt)){
echo "<tr>";
echo "<td class='open_inc_table'>" . "<a href='view_ticket.php?ticket_id=" . $row['ticket'] . "'>" . $row['ticket'] . "</a>" . "</td>";
echo "<td class='open_start_table'>" . date_format($row['start_date'],"d/m/Y H:i:s") . "</td>";
echo "<td class='open_start_table'>" . date_format($row['end_date'],"d/m/Y H:i:s") . "</td>";
echo "<td class='open_priority_table'>" . $row['priority'] . "</td>";
echo "<td class='open_priority_table'>" . $row['category'] . "</td>";
echo "<td class='open_priority_table'>" . $row['system'] . "</td>";
echo "<td class='open_description_table'>" . $row['description'] . "</td>";
echo "<td class='open_description_table'>" . $row['resolution'] . "</td>";
echo "<td class='open_description_table'>" . '<textarea rows="5" cols="50" id="feedback_comments"></textarea>' . "</td>";
echo "<td class='open_system_table'>" . "<a href='ticket_feedback_approve.php?inc_id=" . $row['ticket'] . "&feedback_comments=" . "'>" . 'Approve' . "</a>" . "</td>";
echo "<td class='open_system_table'>" . "<a href='ticket_feedback_reject.php?inc_id=" . $row['ticket'] . "'>" . 'Reject' . "</a>" . "</td>";
echo "</tr>";
}
echo "</table>";
Give id to anchor tag. Write a function that get value of textarea and update href attribute of anchor tag using setAttribute function. Execute function using onkeydown event and pass ticket as parameter of updateHref function.
while ($row = sqlsrv_fetch_array($stmt)){
echo "<tr>";
echo "<td class='open_inc_table'>" . "<a href='view_ticket.php?ticket_id=" . $row['ticket'] . "'>" . $row['ticket'] . "</a>" . "</td>";
echo "<td class='open_start_table'>" . date_format($row['start_date'],"d/m/Y H:i:s") . "</td>";
echo "<td class='open_start_table'>" . date_format($row['end_date'],"d/m/Y H:i:s") . "</td>";
echo "<td class='open_priority_table'>" . $row['priority'] . "</td>";
echo "<td class='open_priority_table'>" . $row['category'] . "</td>";
echo "<td class='open_priority_table'>" . $row['system'] . "</td>";
echo "<td class='open_description_table'>" . $row['description'] . "</td>";
echo "<td class='open_description_table'>" . $row['resolution'] . "</td>";
echo "<td class='open_description_table'>" . '<textarea rows="5" cols="50" id='feedback_comments' onkeydown='updateHref(\"" . $row['ticket'] . "\")'></textarea>' . "</td>";
echo "<td class='open_system_table'>" . "<a id="approve-link">" . 'Approve' . "</a>" . "</td>";
echo "<td class='open_system_table'>" . "<a href='ticket_feedback_reject.php?inc_id=" . $row['ticket'] . "'>" . 'Reject' . "</a>" . "</td>";
echo "</tr>";
}
echo "</table>";
Here is function that will update href of approve link
function updateHref(ticket) {
var comment = document.getElementById("feedback_comments").value;
document.getElementById("approve-link").setAttribute('href', 'ticket_feedback_approve.php?inc_id=' + ticket + '&feedback_comments=' + comment);
}