【发布时间】: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 错误)?此外,
<script>标签上的language属性现在是多余的(更现代但仍然多余的type属性也是如此) -
我正在加载 jquery。
-
正确的语法是
{ latLong: variableToSend }——也许这只是你的问题? -
@deceze 好吧,以美元符号为前缀的对象属性名称没有错,但 OP 似乎认为 AJAX 请求根本没有触发(使用输入值或静态字符串)。在他们查看控制台之前什么都不知道
标签: javascript php ajax settimeout