我已经玩了一段时间了,我不能让每一行发送它显示给javascript函数的特定值,只要点击哪一行就会发送第一行值?
我需要根据mysql结果的结果发送每个特定行的值。
以下是我只提供第1行值的代码。
<?php
require 'core/init.php';
$records = array();
$result = ("(SELECT * FROM message ORDER BY id DESC LIMIT 25)ORDER BY id ASC");
$results = ($db->query($result));
if($results->num_rows){
while($row = $results->fetch_object()){
$records[] = $row;
}
$results->free();
}
if(!count($records)){
echo 'no records';
}else{
?>
<table>
<?php
foreach ($records as $r){
?>
<tr>
<td><div id="modOptions" onclick="modOptions()"><?php echo escape($r->sender); ?></div></td>
<td><?php echo escape($r->message); ?></td>
<input type="hidden" id="modOptionsIp" value="<?php echo escape($r->ip); ?>"/>
<input type="hidden" id="modOptionsSender" value="<?php echo escape($r->sender); ?>"/>
<input type="hidden" id="modOptionsMessage" value="<?php echo escape($r->message); ?>"/>
</tr>
<?php
}
?>
</table>
<?php
}
?>
它显示一切正常,但不会给每一行指定其特定值
非常感谢任何指针。
答案 0 :(得分:0)
更改js modOptions函数,使其可以接受参数
function modOptions(ip, sender, message) {
//ip sender and message are from the row you clicked on
}
并像这样呈现onclick:
onclick="modOptions('<?php echo escape($r->ip); ?>', '<?php echo escape($r->sender); ?>', '<?php echo escape($r->message); ?>' );"
你现在拥有的那些隐藏的字段是无用的