jQuery点击从MySQL数据库在PHP中的行不工作

问题描述:

这应该是非常简单的,但我在做什么是从一个MySQL数据库中的数据库中拉到一个表中,我想要做的是当我点击一个单元格在ID列中,因为它变成白色。我可以得到这个工作,但一旦它做了一个它不做另一个!?jQuery点击从MySQL数据库在PHP中的行不工作

$('#addtocart').click(function(){ 
       $('#addtocart').css("color","white"); 
       return false; 
}); 

在我的PHP我这样做:

while($row = mysql_fetch_array($result)) 
        {  
         echo "<tr>"; 
         echo "<td id='addtocart'>" . $row['id'] . "</td>"; 
         echo "<td>" . $row['om_part_no'] . "</td>"; 
         echo "<td>" . $row['supplier_part_no'] . "</td>"; 
         echo "<td>" . $row['category'] . "</td>"; 
         echo "<td>" . $row['description'] . "</td>"; 
         echo "<td>" . $row['manufacturer'] . "</td>"; 
         echo "<td>" . $row['list_price'] . "</td>"; 
         echo "<td>" . $row['discount'] . "</td>"; 
         echo "<td>" . $row['price_each_nett'] . "</td>"; 
         echo "</tr>"; 
        } 
       echo "</tbody> 
       </table>"; 

如果这是造成我这许多问题!?

你正在做的只是为id =“addtocart”的元素。

我会改变它,让每一个class =“addtocart”onclick的元素都会变成白色。

$('.addtocart').click(function(){
$(this).css("color","white");
return false;
});

并使用echo "td class='addtocart'" . $row['id'] . ""; onstead ID的。你不应该有多个具有相同ID的元素。

P.S.如何在我的代码中添加选项卡?

+0

所以会改变任何PHP代码?如果我在Firefox中检查元素,id列中的每个单元格都有一个“addtocart”标识...但是没有运气! – benhowdle89 2010-11-02 11:47:20

+0

只要让它class =“addtocart”不是id =“addtoclass”。你不可能有很多具有相同ID的元素。该ID对文档是唯一的。 – 2010-11-02 11:50:34

也许有些错误:
1)你的开放标签<table>在哪里?
2)是否包含在html中的jQuery脚本?
3)尝试做下一件事。它可以是有帮助的:

$(document).ready(function(){ 
    $('#addtocart').click(function(){ 
     $('#addtocart').css("color","white"); 
     return false; 
    }); 
}); 

4)安装Firebug附加Firefox的调试JS错误。
5)Id应该是一个唯一的值。但是你有超过1个具有相同ID的元素。尝试生成唯一的ID。

+0

我很确定PHP是好的,我也使用jQuery插件“TableData”不确定这是干扰!?我已经完成了你放下的所有3件事... – benhowdle89 2010-11-02 11:49:24