选中选择Ajax Call后更改

时间:2015-10-16 07:55:36

标签: javascript php jquery ajax select

Hy大家我搜索了很多解决方案,但我没有找到任何建议,谢谢你的帮助;)

我的问题是我在这样的表格中有2或3个选择:



<select name="type" id="type">
  <?php for($i=0;$i<sizeof($id);$i++){?>
        <option value="<?php echo $id[$i] ?>"><?php echo $nom[$i] ?></option>
  <?php } ?>
</select>

<div id="largeurHolder">
  <select name='largeur' id='largeur'>
    <?php for($i=0;$i<sizeof($largeur);$i++){ ?>
     <option value='<?php echo $largeur[$i] ?>'><?php echo $largeur[$i] ?></option>
    <?php } ?>
  </select>
</div>
<div id="hauteurHolder">
  <select name='hauteur' id='hauteur'>
    <?php for($i=0;$i<sizeof($hauteur);$i++){ ?>
     <option value='<?php echo $hauteur[$i] ?>'><?php echo $hauteur[$i] ?></option>
    <?php }?>
  </select>
</div>
&#13;
&#13;
&#13;

所以我想将#largeur值相对于#type和#hauteur值相对于#type更改为ajax,我的ajax是:

&#13;
&#13;
$(document).ready(function(){
  $("#type").on('change',function(){
  var type = $('#type').val();
    $.ajax({
      url: 'check.php',
      type: 'POST',
      data: {type:type,act:'type'},
      success:function(data){
        $('#largeurHolder').show();
        $('#largeurHolder').html(data);
      }
  
    });
    $('#hauteurHolder').html('<select disabled="disabled"></select>');
	return false;
  });
  
  $("#largeur").on('change',function(){
	alert('koko');
    var type = $('#type').val();
	var largeur = $('#largeur').val();
	$('#hauteurHolder').hide();
	$.ajax({
	  url: 'check.php',
		type: 'POST',
		data: {type:type,largeur:largeur,act:'largeur'},
		  success:function(data){
			$('#hauteurHolder').show();
			$('#hauteurHolder').html(data);
		  }
	});	
		
  });
	return false;
});
&#13;
&#13;
&#13;

关于脚本check.php它会返回如下值:

&#13;
&#13;
<?php
if($_POST['act']=='type'): //------------TYPE ACTION
  list($largeur) = GetALlLargeursFromPneus($db,$_POST['type']);
  echo '<select name="largeur" id="largeur">';
  echo '<option value="">Choisissez</option>';
  for($i=0;$i<sizeof($largeur);$i++)
  {
    echo '<option value="'.$largeur[$i].'">'.$largeur[$i].'</option>';
  }
  echo '</select>';
			
  elseif($_POST['act']=='largeur'): //------------LARGEUR ACTION
    list($hauteur) = GetALlHauteursFromPneus($db,$_POST['type'],$_POST['largeur']);
    echo '<select name="hauteur" id="hauteur">';
	echo '<option value="">Choisissez</option>';
	for($i=0;$i<sizeof($hauteur);$i++)
	{
	  echo '<option value="'.$hauteur[$i].'">'.$hauteur[$i].'</option>';
    }
	  echo '</select>';
  endif;
?>
&#13;
&#13;
&#13;

问题在于,当我更改#type时,一切正常,但是当我想在Ajax调用后更改#largeur时,它无法正常工作。

请注意,当我更改#largeur而不更改#type工作正常时,我认为我的问题是在ajax调用之后。

提前谢谢。

0 个答案:

没有答案