2014-12-05 53 views
0

我想根据前2个选择框选择(动态值)获取第3个选择框值;如何通过ajax发送2个选择框动态生成的值以获得第3个选择框值

jQuery的Ajax代码是(这仅与机场选择框作品)

$("#airport").change(function() { 
    var aid=$(this).val(); 
    var dataString = 'aid='+ aid; 
     $.ajax 
     ({ 
      type: "POST", 
      url: "booking/findcompany.php", 
      data: dataString, 
      cache: false, 
      success: function(data) { 
       $("#company").html(data); 
      } 
     }); 
}); 

<select name="site" id="site" class="site"> 
    <option value="" selected="selected">Select</option> 
    <option value="1">Site One</option> 
    <option value="2">Site Two</option> 
    <option value="3">Site Three</option> 
</select> 

<select name="airport" id="airport" class="airport"> 
    <option value="1">Airport One</option> 
    <option value="2">Airport Two</option> 
    <option value="3">Airport Three</option> 
</select> 

<select name="company" id="company" class="company"> 
    //Options here based on above 2 selected values 
</select> 

PHP代码findcompany.php

<?php 
if($_POST['aid']) { 
    $aid=$_POST['aid']; 
    $site=$_POST['sid']; <<<<<< How Can I pass This ID 
    $compsql=mysql_query("select * from tbl_company Where air_id='$aid' and site_id='$sid'"); 
    while($rows=mysql_fetch_array($compsql)){ 
     $cid=$rows['comp_id']; 
     $cdata=$rows['comp_title']; 
?> 
    <option value="<?php echo $cid; ?>"><?php echo $cdata; ?></option> 
<?php } } ?> 

回答

1

使用$('#site').val()获得第一选择框中的值,然后添加它到你的dataString。所以现在你的js代码看起来像 -

$("#airport").change(function() 
    { 
    var aid=$(this).val(); 
    var sid=$('#site').val(); 
    var dataString = 'aid='+ aid +'&sid='+sid; 
    ... 
+0

非常感谢解决方案。 – Shehary 2015-09-01 20:27:13

相关问题