Php 无法使用$\u POST检索所选下拉选项中的值
我似乎无法将select.php中的selected选项值放入value_selected.php文件中。console.logdata没有显示任何内容。为什么呢 select.phpPhp 无法使用$\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
<!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],效果很好!