Php 在jquery中通过ajax提交表单
我在提交表格时遇到了一些问题。看起来并没有发送任何东西,他们的代码有什么问题吗,因为Java脚本不是我的强项Php 在jquery中通过ajax提交表单,php,jquery,ajax,Php,Jquery,Ajax,我在提交表格时遇到了一些问题。看起来并没有发送任何东西,他们的代码有什么问题吗,因为Java脚本不是我的强项 $("#send").click(function() { var complete = true; $('input#name, input#email, input#subject, textarea#message').each(function() { if ($(this).val()) {
$("#send").click(function() {
var complete = true;
$('input#name, input#email, input#subject, textarea#message').each(function() {
if ($(this).val()) {
$(this).css("background","#ffffff").css("color","#5c5c5c");
} else {
$(this).css("background","#d02624").css("color","#ffffff");
complete = false;
}
});
if (complete == true){
var name = $("input#name").val();
var email = $("input#email").val();
var subject = $("input#subject").val();
var message = $("textarea#message").val();
var data = '{"name":"'+name+'","sender":"'+email+'","subject":"'+subject+'","message":"'+message+'"}';
$.ajax({
type:"POST",
url:"contact.php",
data:$.base64.encode(data),
success:function(data){
data = $.parseJSON(data);
if (data.status == "success") {
$.fancybox.close();
}
}
});
}
});
还有一个正在运行的实时版本,可以在以下位置查看:,谢谢:)提交后,我发现一个错误: 数据在第25行为空 看起来数据已成功发送,并且有响应: 这将帮助您确保成功回调中包含数据:
success:function(response) {
if (response) {
var data = $.parseJSON(response);
if (data && data.status == "success") {
$.fancybox.close();
}
} else {
// handle errors
}
}
你可以做得更好
$('form')
.submit(function(event) {
var form = $(this);
$.ajax({
url: '[url here]',
type: 'post',
data: $.base64.encode(form.serialize()), // $.serialize() - it gets all data from your form
dataType: 'json', // function in success callback knows how to parse returned data
success: function(data) {
if (data['status'] == true) {
// your code here
// e.g.
$.fancybox.close();
}
}
});
event.preventDefault();
});
享受!:) 哈哈,谢谢大家。我太傻了,没有包括需要通过php文件传递的变量,对其进行了排序,它工作起来就像做梦一样,我最终使用了第一个解决方案,因为表单提交一个对我不起作用。什么都没有发生,因为您更改了代码,并且希望
$(“#登录联系人”)
而不是$(“着陆接触”)
更改了它,但现在它破坏了表单css,每次我单击某个字段键入内容时,请帮助!太棒了,但由于某种原因,当我单击某个字段时,它破坏了表单css样式,请帮助我。告诉我,你说“破坏表单css样式”是什么意思。这不是由此脚本引起的-我确定。检查你是否没有使用c更改某些类或ID。已修复,但未发送任何内容,这是因为“发送”按钮不是“提交”按钮吗?是的。您必须创建“提交”按钮,因为我们的函数在“提交”时被调用。
$('form')
.submit(function(event) {
var form = $(this);
$.ajax({
url: '[url here]',
type: 'post',
data: $.base64.encode(form.serialize()), // $.serialize() - it gets all data from your form
dataType: 'json', // function in success callback knows how to parse returned data
success: function(data) {
if (data['status'] == true) {
// your code here
// e.g.
$.fancybox.close();
}
}
});
event.preventDefault();
});