如何使用Jquery获取选择选项值并传递给PHP


How to use Jquery to get select option value and pass to PHP?

我有两个数据库表,组类型和组。一个组类型可以有多个组,但一个组只能属于一个组类型。我有两个选择标签,一个是grouptypes,另一个是groups。

我想做的是,每当用户在grouptypes下拉菜单中选择一个组类型时,它都会触发一个处理程序来检索属于该组类型的相应组,并将其传递给第二个选择下拉列表。

我有如下代码。还没有完成,有一些错误。有人能帮忙吗?

  <?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>

这应该可以工作,可能需要一些调整

$(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');
});
});

看看这个页面:

http://www.electrictoolbox.com/json-data-jquery-php-mysql/