几个小时以来一直在努力解决这个问题......
我试图通过从我包含在 <input>
中的 jQuery slider 中获取值来使用 AJAX标签。 AJAX 不会失败(见代码),当我 console.log
我试图通过 Data:
发送的变量, 它打印正确。
注意:jQuery 和 php 在同一个页面上,所以没有 url:
参数,或者您将使用的任何名称。
这是 <script>
部分:
jQuery(function($){
$("input[id='protein-slider']").ready(function(){
var p_range;
var request;
$("input[id='protein-slider']").each(function () {
p_range = $(this).val();
});
console.log(p_range) //Returns correct values
request = $.ajax({
type: "POST",
data: p_range,
});
request.done(function (response, textStatus, jqXHR){
console.log("Hooray, it worked!"); //This prints, no error
});
request.fail(function (jqXHR, textStatus, errorThrown){
console.error(
"The following error occurred: "+
textStatus, errorThrown
);
});
});
});
和 <?php ?>
与此功能相关的代码是:
echo $_SERVER['QUERY_STRING']; //returns nothing
$income_data = $_GET['p_range'];
echo $income_data; //returns nothing
var_dump($income_data); //returns "NULL"
我已经忘记了我已经完成的所有其他方法以及我在这里阅读过的其他无数的 awnsers。似乎没有一个工作,它变得非常令人沮丧......
希望你们中的一个能发现我在做什么愚蠢的事情......
谢谢!
最佳答案
你的ajax是POST的,改成GET
request = $.ajax({
type: "POST",
data: p_range,
});
或者你在 php 中访问你的参数
$var = $_POST['p_range'];
关于javascript - AJAX:$_GET 不返回任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29553782/