我有一個來自數據庫的列表,我想實現編輯功能,在onclicking一個表列時,該列變爲可編輯狀態,點擊列外時,值得到更新。部分用AJAX更新列表
我已經爲此使用了AJAX。我的代碼下:
page1.php中
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script>
function showEdit(editableObj)
{
$(editableObj).css("background","#FFF");
}
function saveToDB(editableObj,column,id)
{
$.ajax(
{
url: "page2.php",
type: "POST",
data:'column='+column+'&editval='+editableObj.innerHTML+'&id='+id,
success: function(data)
{
$(editableObj).css("background","#FDFDFD");
}
});
}
</script>
我的表的列是爲下:
<td contenteditable="true" onBlur="saveToDB(this, 'exmid','<?php echo $p0; ?>')"
onClick="showEdit(this);"><?php echo $p3 ?>
注:$ P0包含序列號行從MySQL數據庫表和$ p3包含顯示的文本。
爲使page2.php的代碼是:
<?php
include_once 'includes/db_connect.php';
?>
<?php
$result = mysql_query("UPDATE examlist1 set " . $_POST["column"] . " = '".$_POST["editval"]."' WHERE sno=".$_POST["id"]);
?>
問題: 當我點擊欄就變成可編輯的。在saveToDB()中使用alert()我已檢查該功能是否在單擊列外時調用,並且值列和id是正確的。
然後我嘗試了alert()函數裏面的$ .ajax,它沒有被調用。我不確定ajax是否正在運行。這是我第一次嘗試在php代碼中使用ajax。
請提出什麼問題和解決方案?該代碼正在使用PHP 5.4在Godaddy託管的基於Linux的服務器上實施。
另外我想設置背景顏色失敗。如何在ajax塊內寫入它?
您的瀏覽器添加插件的螢火擴展。並看看使用螢火蟲檢查發生了什麼。 –