我讨厌JavaScript / jQuery ....而且,大多数时候它都讨厌我。就在我认为我们开始建立融洽关系时,我陷入了一个无法找到出路的洞。
我试图将ContentEditable跨越POST更改到MySQL onBlur。
这是我的HTML / PHP:
<h4><strong>Number of Employees: </strong><span contenteditable="true" onBlur="saveToDatabase(this,'NumberOfEmployees','<?php echo $row["mysqlid"]; ?>')"><?php echo number_format($row['numberofemployees']); ?></span></h4>
这是我的jQuery:
function saveToDatabase(editableObj,column,id) {
var dataString = 'column='+column+'&editval='+editableObj.innerHTML+'&id='+id;
$.ajax({
url: "_updatelead.php",
type: "POST",
data: { dataString },
}
}
});
我无法找到我的错误,但我所做的每一次尝试都会抛出同样的错误:
未捕获的ReferenceError:未定义saveToDatabase 在HTMLSpanElement.onblur(viewleaddetail.php?id = 5658:225)
我有什么想法可以解决这个问题?这似乎是一个简单的答案,但我无法做到。谢谢!
答案 0 :(得分:0)
如果您使用jQuery,为什么不尝试这样:
<强> HTML 强>
<h4><strong>Number of Employees: </strong>
<span contenteditable="true" class="emp_item">
<input type="hidden" value="NumberOfEmployees" name="column">
<input type="hidden" value="<?php echo number_format($row['numberofemployees']); ?>" name="editval">
<input type="hidden" value="<?php echo $row['mysqlid']; ?>" name="id">
<?php echo number_format($row['numberofemployees']); ?>
</span>
</h4>
<强>的javascript 强>
$(document).on('blur', ".emp_item", function () {
var dataString = $(this).find(":input").serialize();
$.ajax({
url: "_updatelead.php",
type: "POST",
data: { dataString }
});
});