$(document).ready(function() {
$("#submitContactForm").click(function () {
$('#loading').append('<img src="http://www.xxxxxxxx.com/demo/copyshop/images/loading.gif" alt="Currently Loading" id="loadingComment" />');
var name = $('#name').val();
var email = $('#email').val();
var comment = $('#comment').val();
var dataString = 'name='+ name + '&email=' + email + '&comment=' + comment;
$.ajax({
url: 'http://www.xxxxx.com/demo/copyshop/php/sendmail.php',
type: 'POST',
data: '?name=Dave&email=xxxxxxx@gmail.com&comment=hiiii',
success: function(result) {
$('#loading').append('success');
}
});
return false;
});
});
php脚本很简单(现在 - 只是想确保它有效)
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$comment = $_POST['comment'];
$to = 'xxxxx@xxxxx.com';
$subject = 'New Contact Inquiry';
$message = $comment;
mail($to, $subject, $message);
?>
jquery嵌入在.aspx页面(我不熟悉的语言)中,但是发布到php脚本。我正在接收电子邮件但内部没有数据。我错过了什么吗?我试图绕过这个例子中的变量,但它仍然无法正常工作
感谢
答案 0 :(得分:1)
除非浏览器和目标都支持same origin,否则您无法使用Ajax与运行脚本的CORS内的网站进行通信。您可以使用JSONP来解决这个问题,但实际上CORS是这方面的未来。
答案 1 :(得分:0)
您无法使用AJAX向其他域发送请求。
答案 2 :(得分:0)
删除'?'来自您数据的字符。我猜这是弄乱PHP中的数据解析。
发布数据时,应使用encodeURIComponent
进行编码,这会将?
编码为%3F
。