我有一个网页上的复选框,当您单击它时,更新数据库中的值以及数据库中的表中的editedBy和editedDate列。我正在通过ajax调用更新到一个PHP页面。我试图在成功回调中获取更新的editedDate和editedBy数据,以便我可以更新保存此信息的响应式span标签。我试图用jQuery来实现这一点。这是我到目前为止有:jQuery ajax回调不会触发jQuery代码
var updateUserDate = function(data){
var table = data.table;
var rowId = data.rowId;
var editedDate = data.editedDate;
var editedBy = data.editedBy;
//alert(table+' - '+rowId+' - '+editedDate+' - '+editedBy);
$('"#'+table+' .row'+rowId+' .newEditedDate"').html('"'+editedDate+'"');
}
var submitDataCheckbox = function(target){
var project = target.attr('project');
var tableName = target.attr('table');
var rowId = target.attr('rowId');
var checkboxValue = (target.attr('checked'))?true:false;
$.ajax({
type: 'GET',
url: '/checklistpost.php?projectId='+project+'&table='+tableName+'&rowId='+rowId+'&value='+checkboxValue,
success: function(data){
updateUserDate(data);
},
error: function(){
alert('There was an error submitting data to the database.');
},
dataType: 'json'
});
}
的checklistpost.php
页面需要是在查询字符串,并将其发布到数据库中的变量。然后,它将变量放入一个数组中,然后用json编码,这样我就可以使用json对象。基本上,我正在尝试取回那个被回调的json对象,并使用它来更新上面提到的跨度。当我在updateUserDate
函数中使用alert()
之前验证我可以看到这些变量并且它们都具有正确的数据(您可以看到我用来执行此操作的代码已被注释掉)。然而,每当我尝试和使用jQuery的变量,因为你在代码的第6行看到。它什么都不做。顺便说一句,基于上面写的应该输出的jQuery代码应该是这样的$("#tableName .row1 .newEditedDate").html("April 14, 2011 @ 5:15pm")
我缺少什么?预先感谢任何帮助!
你使用jQuery验证插件anyhwere?像老版本的jQuery validate之类的一些插件可以修改全局的'ajaxSetup()'并导致这种事情失败。 – 2011-04-14 22:16:05