我在页面上有一个select,我需要取值并将其传递给php变量,该变量使用jquery.load通过另一个文件加载。
$("[name=quote_storage_location]").on("change", function() {
var storenamechange = this.value;
$.ajax({
data: {storename: storenamechange },
success: function(data){
//console.log(data);
}
});
$("#size-select").load("select.php");
});
PHP文件
if(isset($_REQUEST['storename'])){
$location = $_POST['storename'];
echo $location;
} else {
echo 'fail';
}
如果我提醒/ console.log JS变量然后我得到了所需的答案但是当加载PHP文件时我失败了
我正在尝试做什么?
答案 0 :(得分:2)
你的ajax调用没有指定请求类型(POST,GET,PUT等),所以它默认为GET。然后你的php设置就会发生奇怪的事情
if(isset($_REQUEST['storename'])){ // $_REQUEST contains contents of $_GET and $_POST
$location = $_POST['storename']; // but since ajax call is using GET, the POST variable is empty
echo $location;
} else {
echo 'fail';
}
这应该有效
if(isset($_REQUEST['storename'])){
$location = $_REQUEST['storename'];
echo $location;
} else {
echo 'fail';
}