我创建了一些变量,其中包含在下拉菜单中选择的答案。现在我想在我的 .php 文件中使用这些变量,以便我可以对它们进行查询。但我不知道我做错了什么,所以这是我的代码。
这是我的 main.js 文件:
$("#slctTable").change(function(){
var table = document.getElementById("slctTable");
var tableSelected = table.value;
console.log(tableSelected);
});
$("#slctField").change(function(){
var field = document.getElementById("slctField");
var fieldSelected = field.value;
console.log(fieldSelected);
});
$("#slctAttribute").change(function(){
var attribute = document.getElementById("slctAttribute");
var attributeSelected = attribute.value;
console.log(attributeSelected);
});
这是我的 getData.php 文件:
<?php
include "connect.php";
$test1 = $_GET['tableSelected'];
$test2 = $_GET['fieldSelected'];
$test3 = $_GET['attributeSelected'];
echo ($test1);
echo ($test2);
echo ($test3);
?>
最佳答案
您必须将用户重定向到 URL 中包含变量的页面。 PHP 在服务器上运行脚本,然后将该脚本的输出发送到客户端。 JavaScript 只在客户端运行。你可以这样做:
$('#slctTable').change(function(){
var table = document.getElementById("slctTable");
var tableSelected = table.value;
console.log(tableSelected);
window.location.href = "?tableSelected=" + tableSelected
});
或者,您可以发出 Ajax 请求来调用服务器,而无需刷新页面。您可以使用这个:
$('#slctTable, #slctField, #slctAttribute').change(function ()
{
var tableSelected = document.getElementById("slctTable").value;
var fieldSelected = document.getElementById("slctField").value;
var attributeSelected = document.getElementById("slctAttribute").value;
$.ajax({
"url": "getData.php",
"type": "GET",
"data": {
tableSelected: tableSelected,
fieldSelected: fieldSelected,
attributeSelected: attributeSelected
}
})
.done(function (response)
{
console.log(response);
});
});
关于javascript - 如何使用 php 文件中的 GET 来获取我在 .js 文件中声明的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37279696/