在我的任何页面上,例如this one,当点击“有问题”按钮左栏时,表单会通过jQuery Tools叠加显示。你填写表单,提交给PHP脚本(本地的),如果验证并提交,你会得到一个感谢信或错误信息,这取决于服务器的响应。在FF,Safari和Opera中很好用,但不适用于IE或Chrome。 IE和Chrome只是去打印.ajax在脚本URL的空白页面上查找的返回消息。我必须有一些不正确的,因为即使我的跨域cURL ajax脚本工作,但不是这样!下面是代码jQuery .ajax提交在IE和Chrome中不起作用
$(document).click(function() {
$.validator.methods.equal = function(value, element, param) {
return value == param;
};
var validator = $("#request").bind("invalid-form.validate", function() {
$("#summary").html("Your form contains " + validator.numberOfInvalids() + " error(s), please fix.");
}).validate({
//debug: true,
errorElement: "em",
errorContainer: $("#summary"),
errorPlacement: function(error, element) {
error.appendTo(element.parent("li"));
},
success: function(label) {
label.text("ok!").addClass("success");
},
submitHandler: function(form) {
$("#processing").show();
var dataString = $(form).serialize();
$.ajax({
type: $("#request").attr('method'),
url: form.action,
data: dataString,
clearForm: true,
success: function(data) {
if (data=="SuccessMail Sent") {
$("#formWrap, #supportHdln").hide();
$("#thankYou").html('
Thank You We have received your request.
A Customer Service Representative from NinjaTrader will contact you shortly.
').fadeIn("slow");} else {
$("#formWrap, #supportHdln").hide();
$("#error").html('
Uh Oh We are unable to process your request.
Please make sure all fields were filled out correctly. If you are still having trouble, please email us
').fadeIn("slow");}
}
});
return false;
},
rules: {
hs_customer_firstname: {
required: true,
minlength: 2
},
hs_customer_lastname: {
required: true,
minlength: 2
},
hs_customer_email: {
required: true,
email: true
},
confirmEmail: {
required: true,
email: true,
equalTo: "#hs_customer_email"
},
hs_customer_phone: {
required: false,
digits: true
},
hs_category: {
required: true
},
hs_customLargeTextField: {
required: true,
minlength: 20
},
math: {
required: true,
equal: <?php echo $randomNumTotal; ?>
}
},
messages: {
hs_customer_firstname: {
required: "Please Enter Your First Name",
minlength: "Your First Name Must be at Least 2 Characters"
},
hs_customer_lastname: {
required: "Please Enter Your Last Name",
minlength: "Your Last Name Must be at Leaset 2 Characters"
},
hs_customer_email: {
required: "Please enter your email address",
email: "Please enter a valid email address"
},
confirmEmail: {
required: "Please Confirm Your Email Address",
email: "Please Enter a Valid Email Address",
equalTo: "Please Enter the Same Email Address as Above"
},
hs_customer_phone: {
digits: "Numbers only"
},
hs_category: {
required: "Please Select a Category"
},
hs_customLargeTextField: {
required: "Please Leave a Comment",
minlength: "Your comment must be at least 20 characters"
},
math: {
required: "Please Solve the Problem",
equal: "Please Solve the Problem Correctly"
}
}
});
});
和这里的运行它
if(empty($_POST['hs_customer_firstname']) || empty($_POST['hs_customer_lastname']) ||
empty($_POST['hs_customer_email']) || empty($_POST['hs_category']) ||
empty($_POST['hs_customLargeTextField']) || empty($_POST['math'])) {
echo ('Success');
}
$headers = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
$firstname = $_POST['hs_customer_firstname'] ;
//more like this
mail("[email protected]", "Support Request",
//$_POST fields
"From: $email");
if(mail($firstname, $lastname, $email, $category, $inquiry)) {
echo ('Mail Sent');
} else {
echo ('Error: Mail failed');
}
?>
+0
您看看控制台中的“网络”选项卡以查看您的请求吗? –
2010-12-02 02:50:31