0
我正在尝试使用以下jQuery,Ajax和PHP将表追加到表。我将一个JSON编码数组返回给Ajax。
当我使用成功为Ajax的行不附加到表,并没有警报。
如果我更改成功到完成该行被附加,但所有单元格显示“未定义”。我不确定成功功能失败的原因。使用Ajax和PHP向表追加行
的jQuery /阿贾克斯
$('#insert').click(function (e) {
e.preventDefault();
$.ajax({
url: "Gender/process.php",
type: "POST",
data: $('form').serialize(),
dataType:"json",
success: function (strMessage) {
alert(strMessage[0]);
$('#pro-table').append(
'<tr class="row"><td>' + strMessage[0] + '</td>\n\
<td>' + strMessage[1] + '</td>\n\
<td>' + strMessage[2] + '</td>\n\
<td>' + strMessage[3] + '</td>\n\
<td>' + strMessage[4] + '</td></tr>'
);
$(".front").addClass('front-transform');
$(".back").addClass('back-transform');
}
});
$("form").trigger("reset");
});
PHP
$user = mysqli_real_escape_string($con, $_POST['user']);
$gender = mysqli_real_escape_string($con, $_POST['gender']);
$description = mysqli_real_escape_string($con, $_POST['description']);
if (isset($user) && isset($gender) && isset($description) && $user != '' && $gender != '' && $description != '') {
$insert_query = "INSERT INTO php_pro1 (user, gender, description) VALUES ('$user','$gender', '$description')";
$rks = mysqli_query($con, "SELECT (up_votes, down_votes) FROM php_pro1 ORDER BY id DESC LIMIT 1");
$row = mysqli_fetch_row($rks);
if (mysqli_query($con, $insert_query)) {
$insert = array($user, $gender, $description, $row[0], $row[1]);
echo json_encode($insert);
} else {
echo mysqli_error($con);
}
} else {
echo 'Failed: ' . mysqli_error($con);
}
他们解释成功和完整的之间的差异,请检查此答案:https://stackoverflow.com/questions/5240876/差异之间的成功和完成https://stackoverflow.com/questions/1021062/use-success-or-complete-in-ajax-call –
好了,因为完整的函数返回的东西并不意味着不应该有代码存在问题。仍然失去了为什么成功不起作用。 – AndrewDavies