Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法使用$\u POST检索所选下拉选项中的值_Php_Ajax - Fatal编程技术网

Php 无法使用$\u POST检索所选下拉选项中的值

Php 无法使用$\u POST检索所选下拉选项中的值,php,ajax,Php,Ajax,我似乎无法将select.php中的selected选项值放入value_selected.php文件中。console.logdata没有显示任何内容。为什么呢 select.php <!DOCTYPE html> <html> <head></head> <body> <script src="js/jquery-3.2.0.min.js"></script> <form method="PO

我似乎无法将select.php中的selected选项值放入value_selected.php文件中。console.logdata没有显示任何内容。为什么呢

select.php

<!DOCTYPE html>  
<html>  
<head></head>
<body>
<script src="js/jquery-3.2.0.min.js"></script>

<form method="POST" action="">
<label for "sel_opt">Select value: </label>
<select name="sel_opt" id="sel_opt">
    <option value="1">1</option>
    <option value="2">2</option>
</select>
<input name="submit" type="submit" id="submit" value="Submit">
</form>

<div id="result"></div>

<script>
$(document).ready(function(){  
           $("#submit").click(function(){ 
             $.ajax({  
                          url:"http://localhost/value_selected.php",  
                          type:"POST",  
                          success:function(data)  
                          {  
                            console.log(data);
                            $('#result').html(data);  
                          }  
                     });  
                });  
           }); 
</script>
</body>
</html>
value_selected.php

<?php
$output = "";
if(isset($_POST["submit"])) {
 if(isset($_POST["sel_opt"])) {
$val = $_POST["sel_opt"];
 if ($val == 1) {  
      $output = "<p>Value 1 selected</p>";
 }   else {
    $output = "<p>Value 2 selected</p>";
 }
 echo $output;
}
 ?>
使用表单值向ajax配置对象添加数据

<script>
$(document).ready(function(){
    $("#submit").click(function(){
        $.ajax({
            url:"http://localhost/value_selected.php",
            type:"POST",
            data: $('form').serialize(),
            success:function(data)
            {
                console.log(data);
                $('#result').html(data);
            }
        });
    });
});
</script>

您没有使用AJAX请求发送数据。因此,您从未输入ifisset$_POST[submit]{,也从未输出任何内容。添加其他内容,您将看到您从未输入。@chris85啊,我明白了。那么我该怎么做呢?您需要将数据:{name:John,location:Boston}字段传递给请求。在示例中,PHP中的字段将是$_POST['name']和$_POST['location']这些值将是john和boston。检查这个@chris85链接,这确实很有帮助。我删除了ifisset$_POST[submit],并传递了数据:{sel_opt:$sel_opt.val},运行平稳。谢谢。我编辑了我以前的评论。我尝试了这个,并从value_selected.php中删除了ifisset$_POST[submit],效果很好!