1

我正在尝试构建 Web 应用程序,其中用户单击一个按钮并提示他们使用 JavaScript 提示功能输入电子邮件地址。

function mail_me(x)
{
        var person = prompt('Please enter your email Address','emailme@me.com');

}

比我想在我的 JavaScript 中调用 PHP 函数并将 person 作为该 PHP 函数的参数传递。有没有可能做到。到目前为止,我已经尝试过了。

function mail_me(x)
{
        var person=prompt('Please enter your email Address','emailme@me.com');
            alert('<?php mail_tome('person'); ?>');
}
4

3 回答 3

4

这是不可能的,PHP 是在服务器上处理的,而 Javascript 是在服务器完成后在客户端呈现的。

您需要使用 Ajax 来获取 的值person,并通过 ajax 将其传递回服务器上的 php 脚本,然后该脚本将处理您的请求。

http://api.jquery.com/jQuery.ajax/

于 2013-06-04T19:04:49.823 回答
1

这样的事情是不可能的。PHP 在服务器上执行,并将结果传递给浏览器。

但是,您可以使用 AJAX 将变量发送到服务器。例子:

var a = new XMLHttpRequest();
a.open("POST","/path/to/script.php",true);
a.onreadystatechange = function() {
    if( this.readyState != 4) return;
    if( this.status != 200) return alert("ERROR "+this.status+" "+this.statusText);
    alert(this.responseText);
};
a.send("email="+person);

这将导致浏览器的任何 PHP 脚本echo出现在alert. 当然,您可以随意自定义,这只是一个基本示例。

于 2013-06-04T19:09:11.660 回答
0

你需要一种叫做 AJAX 的东西。如果您知道并使用 JQuery,它已经内置了 AJAX 功能。

例子:

function mail_me() {
  var person = prompt('Please enter your email Address','emailme@me.com');
  $.ajax({
    type: 'post',
    url: URL TO YOUR SCRIPT,
    data: {
       email: EMAIL_VARIABLE
    },
    success: function(result) {
        //handle success
    }
  });
}
于 2013-06-04T19:05:49.650 回答