Ajax在asp中失败了

时间:2010-05-24 19:11:36

标签: php asp.net javascript jquery ajax

嘿伙计们,这可能真的很愚蠢,但希望有人可以提供帮助。我正在尝试使用ajax发布到外部脚本,因此我可以邮寄数据,但由于某种原因,我的数据没有进入脚本。

$(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脚本。我正在接收电子邮件但内部没有数据。我错过了什么吗?我试图绕过这个例子中的变量,但它仍然无法正常工作

感谢

3 个答案:

答案 0 :(得分:1)

除非浏览器和目标都支持same origin,否则您无法使用Ajax与运行脚本的CORS内的网站进行通信。您可以使用JSONP来解决这个问题,但实际上CORS是这方面的未来。

答案 1 :(得分:0)

您无法使用AJAX向其他域发送请求。

答案 2 :(得分:0)

删除'?'来自您数据的字符。我猜这是弄乱PHP中的数据解析。

发布数据时,应使用encodeURIComponent进行编码,这会将?编码为%3F