jEditable - 将新值更新到数据库

时间:2012-03-12 10:33:24

标签: jquery mysql ajax jeditable edit-in-place

我是网络开发世界的新手。让我解释一下我想要的东西。

id  car        make 
1   panamera   porsche  
2   italia     ferraris 
3   avantador  lamborghini  
4   slk        mercedes

我在我的数据库中有这个简单的表,我将在while循环中回显这个表。

<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script src="jquery.jeditable.js" type="text/javascript" charset="utf-8"></script>
</head>

<body>
<ul>
<?php  
$query = "SELECT * FROM inplace LIMIT 0, 6";    
$result = mysql_query($query) or die ('Query couldn\'t be executed');  
while ($row = mysql_fetch_assoc($result)) {
?>

<script type="text/javascript">
$(function() {
$("#<?php echo $row['id']; ?>").editable("http://www.example.com/save.php", { 
  indicator : "<img src='img/indicator.gif'>",
  tooltip   : "Doubleclick to edit...",
  event     : "click",
});
});
</script>

<?php
echo '<li id="'.$row['id'].'">'.$row['car'].'</li>';
echo '<li id="'.$row['id'].'">'.$row['make'].'</li>'; 
}
?>
</ul>
</body>

我正在尝试使用Mika Tuupola的jEditable edit-in-place jQuery插件。在这段代码中,我在while循环中粘贴了jQuery代码。这里的第一个问题是,只有“car”列是可编辑的。我无法编辑“make”列。其次,我如何将新值发布(更新)到数据库?感谢。

1 个答案:

答案 0 :(得分:0)

您正在使用具有相同ID的两个元素,这在语义和逻辑上都是不正确的。因此它没有按预期工作。

给出相同的类或差异ID,如下例所示。

echo '<li id="car'.$row['id'].'">'.$row['car'].'</li>';
echo '<li id="make'.$row['id'].'">'.$row['make'].'</li>';