我有两个数据库表,组类型和组。 grouptype可以有多个组,但一个组只属于一个grouptype。我有两个选择标签,一个是grouptypes,另一个是group。
我想要做的是,每当用户在grouptypes下拉菜单中选择一个grouptype时,它会触发一个处理程序来检索属于该grouptype的相应组,并将其传递给第二个选择下拉列表。
我的代码如下。它还没有完成,有一些错误。有人可以帮忙吗?
<?php
$result = $_POST['grouptype'];
echo $result;
?>
GroupType: <select id="groupTypes">
<?php foreach($grouptypes as $type) : ?>
<?php echo "<option value='" . $type->name . "'>" .$type->name. "</option>"; ?>
<?php endforeach ?>
</select><br />
<br />
Group: <select id="groups">
<?php $count = 0; ?>
<?php foreach($groups as $group) : ?>
<?php $count++; ?>
<?php echo "<option value='" . $group->name . "'>" .$group->name. "</option>"; ?>
<?php endforeach ?>
</select><br />
<script type="text/javascript">
$('#groupTypes').change(function(){
var grouptype = $('#groupTypes').val();
$.post("GroupModificationSuccess.php", {grouptype: grouptype});
});
</script>
答案 0 :(得分:0)
答案 1 :(得分:0)
这应该可行,可能需要一些调整
$(function(){
var GType = $("select#groupTypes"),
GGroup = $("select#groups").hide(),
GData = [];
GType.bind('change', function(){
//grab the value of the option currently selected
var optselected = $(this).find("option:selected").val();
if(optselected)
{
//send post data and request a callback
$.post("GroupModificationSuccess.php", {'grouptype' : optselected}
, function(callback)
{
if(callback)
{
GData.push(callback.data);
}
});
}
//loop data send back via callback and build options
$.each(GData, function(key, val))
{
var opts = '';
opts += '<option value='+ key + '>' + value + '</option>'
}
//append options to Group select and show it
GGroup.append(opts).show().fadeIn('slow');
});
});