【发布时间】:2016-09-22 17:31:42
【问题描述】:
我有一个包含 PHP 和 JS 的文件。在这个文件中,我有 3 个下拉菜单,我尝试应用级联但它不起作用。当我在第一个下拉菜单中选择一个选项时,第二个下拉菜单没有任何价值。
如何解决这个问题?
用于下拉菜单的 PHP:
<form action='' method='post' name='resumeDatabank' id='resumeDatabank'>
<div class="div-select">
<label for="list_position" id="#ddress_search LABEL">Position</label>
<br/>
<select name="list_position" id="filterbyposition">
<option name="default" class="filter_by" selected="selected" value="Select by Position">Select by Position</option>
<?php
foreach($query_position as $option){
if(isset($_POST['list_position']) && $_POST['list_position'] == $option->position)
echo '<option name="list_position" class="filter_by" selected value="'. $option->position .'">'. $option->position .'</option>';
else
echo '<option name="list_position" class="filter_by" value="'. $option->position .'">'. $option->position .'</option>';
};
?>
</select>
</div>
<div class="div-select">
<label for="list_location" id="#ddress_search LABEL">Location</label>
<br/>
<select name="list_location" id="filterbylocation">
<option name="default" class="filter_by" selected="selected" value="Select by Location">Select by Location</option>
<?php
foreach($query_locations as $option){
if(isset($_POST['list_location']) && $_POST['list_location'] == $option->hiring_location)
echo '<option name="list_location" class="filter_by" selected value="'. $option->hiring_location .'">'. $option->hiring_location .'</option>';
else
echo '<option name="list_location" class="filter_by" value="'. $option->hiring_location.'">'. $option->hiring_location .'</option>';
};
?>
</select>
</div>
<div class="div-select">
<label for="list_processed" id="#ddress_search LABEL">Processed</label>
<br/>
<select name="list_processed" id="filterbyprocessed">
<option name="default" class="filter_by" selected="selected" value="Select by Processed">Select by Processed</option>
<?php
foreach($query_processed as $option){
if(isset($_POST['list_processed']) && $_POST['list_processed'] == $option->processed_option)
echo '<option name="list_processed" class="filter_by" selected value="'. $option->processed_option .'">'. $option->processed_option .'</option>';
else
echo '<option name="list_processed" class="filter_by" value="'. $option->processed_option.'">'. $option->processed_option .'</option>';
};
?>
</select>
</div>
<div class="div-input">
<input type="submit" value="Search" class="div-input-submit"/>
</div>
</form>
JS:
jQuery("#filterbyposition").live('change',function() {
var selectVal = jQuery('#filterbyposition :selected').val();
alert(selectVal);
var $output = jQuery('#filterbylocation').html('');
jQuery.ajax({
url: 'page-resume-databank.php',
data: "n="+selectVal,
dataType: 'json',
success: function(data){
jQuery.each(data, function(key,value){
$output.append("<option value='"+value.id+"'>"+value.filterbylocation+"</option>");
});
}
});
});
【问题讨论】:
标签: javascript php jquery ajax drop-down-menu