【问题标题】:Javascript - Send Javascript Variable to PHPJavascript - 向 PHP 发送 Javascript 变量
【发布时间】:2015-01-29 04:16:53
【问题描述】:

我想将 JavaScript 变量 (variableToSend) 的值发送到 PHP 变量 ($latLong),然后将其发布到 MySQL。 JavaScript 变量正在捕获下面列出的表单之外的 HTML 文本框的值:

<input type="text" id="latLng" value="Working"/>

文本框值传递给 Javascript 变量就好了(我已经通过变量值的警报进行了测试):

<script language="JavaScript">
             setTimeout(function(){
                var variableToSend = document.getElementById("latLng").value;
                $.post('html/index.php', {$latLong: "variableToSend"});
            }, 10000);
    </script>

但是,$.post 方法没有触发。我在想发生了几件事中的一件。第一,文本字段不在表单中,这就是它没有传递给 PHP 变量的原因。我通过将文本字段放回表单标记中来测试这一点,但这不起作用。二是$.post方法写错了。第三,$.post 方法在 10 秒间隔后根本没有触发。我认为这是第三种情况,但如果可能的话,我希望有一些方向。

非常感谢任何帮助。

【问题讨论】:

  • 你在加载jQuery吗?我假设不考虑在 DOM 准备好后您不会告诉任何要加载的内容。
  • 浏览器控制台中是否有任何错误(包括 AJAX 请求的 Network 错误)?此外,&lt;script&gt; 标签上的 language 属性现在是多余的(更现代但仍然多余的 type 属性也是如此)
  • 我正在加载 jquery。
  • 正确的语法是{ latLong: variableToSend }——也许这只是你的问题?
  • @deceze 好吧,以美元符号为前缀的对象属性名称没有错,但 OP 似乎认为 AJAX 请求根本没有触发(使用输入值或静态字符串)。在他们查看控制台之前什么都不知道

标签: javascript php ajax settimeout


【解决方案1】:

您可以使用附加到脚本的 QueryString。另一个更好的选择是使用 FormData 对象。

这是来自 MDN 的示例:

var formData = new FormData();

formData.append("username", "Groucho");
formData.append("accountnum", 123456); // number 123456 is immediately converted to string "123456"

// HTML file input user's choice...
formData.append("userfile", fileInputElement.files[0]);

// JavaScript file-like object...
var content = '<a id="a"><b id="b">hey!</b></a>'; // the body of the new file...
var blob = new Blob([content], { type: "text/xml"});

formData.append("webmasterfile", blob);

var request = new XMLHttpRequest();
request.open("POST", "http://foo.com/submitform.php");
request.send(formData);

【讨论】:

  • 你回答错问题了吗?这根本不符合问题
  • 他想在 MySQL 中获取一个 javascript 变量。如果他们遵循上述内容,他们可以轻松做到这一点。我不认为这是不准确的。
  • 您是否评论了错误的答案,因为您似乎没有清楚地阅读该问题?
  • OP 的主要问题似乎是在超时回调中对 $.post 的调用没有触发。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-01
  • 1970-01-01
  • 2017-07-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多