使用ajax和php选择行表
我有一个下拉菜单,其中包括一些类别,每个类别都有自己的子类别,我想显示他们购买选择类别名称 但它不起作用,我是错过了什么,还是我做错了使用ajax和php选择行表,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,我有一个下拉菜单,其中包括一些类别,每个类别都有自己的子类别,我想显示他们购买选择类别名称 但它不起作用,我是错过了什么,还是我做错了 <script type="text/javascript"> $(function() { $("#error").hide(); $("#category").change(function(){ $("#error").hide(); var categor
<script type="text/javascript">
$(function() {
$("#error").hide();
$("#category").change(function(){
$("#error").hide();
var category = $("#category").val();
if (category == "") {
$("#error").show();
return false;
}
var data = $("#form").serialize();
$.ajax({
type:"POST",
url:"index.php",
data:data,
success: function(){
}
});
return false;
});
});
</script>
<form id="form" name="form">
<label for="category" id="error">Empty</label>
<select name="category" id="category">
<option></option>
<option value="News">News</option>
<option value="Items">Items</option>
<option value="Updates">Updates</option>
</select>
</form>
<?php
include("connect.php");
if(!empty($_POST['category'])){
$sql=$con->prepare("SELECT * FROM categorys WHERE category=:category ");
$sql->bindparam(":category",$_POST['category']);
$sql->execute();
while($r=$sql->fetch()){
echo $r['subcategory'];
}
}
?>
试着这样,
$.ajax({
type:"POST",
url:"get_subcategory.php",
data:data,
success: function(data){
alert(data)// this will have the second dropdown. add to desired place in your view.
}
});
在get_subcategory.php中
SomePage.php
创建新页面AjaxSelectCategory.php
[注意:如果要更改此页面名称,请同时更改标记。两者都是相关的。]
<?php
include("connect.php");
if(!empty($_GET['CatName']))
{
$sql=$con->prepare("SELECT * FROM categorys WHERE category=:category ");
$sql->bindparam(":category",$_GET['CatName']);
$sql->execute();
?>
<select name='subcategory'>
<?php
while($r=$sql->fetch())
{?>
<option value="<?php echo $r['subcategory'];?>"><?php echo $r['subcategory'];?></option>
</select>
<?php }
}?>
你将ajax请求产生的列表附加到哪里?我没有这样做,你能告诉我怎么做吗?谢谢你的回答,我会尝试的this@ssd确保在运行ajax之前更改变量。Mr@ssd:如果您认为这对您有帮助的话。请把它标为正确答案。因为,其他用户将很容易找到它。谢谢
<form id="form" name="form">
<div id='category'>
<label for="category" id="error">Empty</label>
<select name="category" id="category">
<option></option>
<option value="News">News</option>
<option value="Items">Items</option>
<option value="Updates">Updates</option>
</select>
</div>
<div id='subcategory'>
</div>
</form>
<script>
$('#category').change(function(){
var CatName= $('#category').val();
$.ajax({url:"AjaxSelectCategory.php?CatName="+CatName,cache:false,success:function(result){
$('#subcategory').html(result);
}});
});
</script>
<?php
include("connect.php");
if(!empty($_GET['CatName']))
{
$sql=$con->prepare("SELECT * FROM categorys WHERE category=:category ");
$sql->bindparam(":category",$_GET['CatName']);
$sql->execute();
?>
<select name='subcategory'>
<?php
while($r=$sql->fetch())
{?>
<option value="<?php echo $r['subcategory'];?>"><?php echo $r['subcategory'];?></option>
</select>
<?php }
}?>