第一个脚本在单击时将文本转换为可编辑的文本字段。编辑文本后,按下激活第二个脚本的提交按钮。第二个脚本应该通过 AJAX 将一些信息发送到另一个页面,最终提交到数据库中。前两个变量(projectID 和contactType)通过AJAX 发送就好了,但是updatedInfo(应该包含编辑文本的变量)总是空白。我假设这是我想念的愚蠢的东西,但我无法弄清楚。两个脚本如下。
<script type="text/javascript">
$(document).ready(function() {
var alreadyActive = "";
$(".editable").on("click", function () {
if(!alreadyActive) {
OriginalText = $(this).text();
divValue = $(this).attr('value');
$(this).html("<form class='edit-form' name='" + divValue + "'><input type='text' value='" + OriginalText + "' /><input type='submit' value='Update' /></form>");
alreadyActive = "true";
}
});
});
</script>
<script type="text/javascript">
$('body').delegate('.edit-form','submit',function(e){
e.preventDefault();
var projectID = <?php echo $projectID ?>;
var contactType = $(this).attr('name');
var updatedInfo = $(this).val();
$.ajax({
url: 'editinplace.php?projectID=' + projectID + '&contactType=' + contactType + '&updatedInfo=' + updatedInfo,
});
});
</script>