1

我有一个 javascript 文件,一直用作我正在开发的网站的模板,并且在该脚本中有一个简单的表单验证,如果没有发生错误,它将数据发送到名为 contact.php 的 PHP 页面.

但是我不确定如何“抓取”从我的 PHP 站点中的 JavaScript 发送的数据?contact.php 有效——也就是说,如果我在我的表单中直接将其定向到contact.php,它会毫无问题地发送邮件。在该文件中,我发送如下变量: $name = $_POST['formName']; 依此类推,最后将其发送到邮件功能。

我的 JavaScript 文件中发送数据并在同一页面上显示“成功”消息的代码是:

$.post("contact.php",
{ formFrom: FromValue, formName: NameValue, formMessage: messageValue },
function(data){
$("#loadingImage").fadeOut("fast", function() {                
$("#loadingImage").before('<p>The message has been sucessfully send. Thank you!</p>');      
});
}
);

NameValue, messageValue, FromValue像这样在表单验证中设置var messageValue = $("#formMessage").val();

任何帮助将不胜感激。

真诚
- Mestika

4

1 回答 1

2

只需使用 jQuery AJAX 调用(此语法来自jQuery 1.5.X):

$.ajax({
    type: 'POST'
    url: urlString,
    data: {formFrom: FromValue, formName: NameValue, formMessage: messageValue}
}).success(function(data, status, xhr) {
    var obj = eval('(' + data + ')');
    //response as object
});

要将 JSON 发送回 JavaScript,请在​​ PHP 中使用此函数:

http://php.net/manual/en/function.json-encode.php

另一件事:根据经验,使用“FromValue”之类的变量名称是不好的做法。初始大写应该用于类名,而不是变量(JavaScript 开发人员从 Java 借鉴了这种做法)。

于 2011-04-11T14:47:54.007 回答