如何有选择地添加第3个选择框或重新标记&重定向到第二个选择框?

时间:2016-10-21 19:52:35

标签: php jquery mysql

我有一个表格,需要第一个选择框。根据选择,将使用不同的表作为查询的源来填充第二个选择框。然后,根据第一选择,可能需要或不需要第三选择框。我已经设计了最初显示3个选择框的表单,但在某些情况下,用户必须知道跳过第二个选择框。这至少令人困惑。举个例子: 如果公司选择无,那么公墓和公司都可以。必须显示部分选择框(部分取决于选择的墓地)。如果选择了XYZ公司,则只需要查看/选择区域选择框(因为公墓是公司特定的):

<script>
function getCemetery(val) {
    $.ajax({
    type: "POST",
    url: "get_cemetery.php",
    data:'company_name='+val,
    success: function(data){
        $("#cemetery-list").html(data);
    }
    });
}

以下是表单的代码:

<body>
<div class="frmDronpDown">
<div class="row">
<label>Company:</label><br/>
<select name="company" id="company-list" class="demoInputBox" onChange="getCemetery(this.value);">
<option value="">Select Company</option>
<?php
foreach($results as $company) {
?>
<option value="<?php echo $company["name"]; ?>"><?php echo $company["name"]; ?></option>
<?php
}
?>
</select>
</div>
<div class="row">
<label>Cemetery:</label><br/>
<select name="cemetery" id="cemetery-list" class="demoInputBox" onChange="getSection(this.value);">
<option value="">Select Cemetery</option>
<?php
foreach($results as $cemetery) {
?>
<option value="<?php echo $cemetery["name"]; ?>"><?php echo $cemetery["name"]; ?></option>
<?php
}
?>
</select>
</div>
<div class="row">
<label>Section:</label><br/>
<select name="section" id="section-list" class="demoInputBox">
<option value="">Select Section</option>
</select>
</div>


</div>
</body>

这是在脚本中调用的额外php代码:

<?php
require_once("dbcontroller.php");
$db_handle = new DBController();
if(!empty($_POST["company_name"])) {
 if (($_POST["company_name"]<>"None") && ($_POST["company_name"]<>"Other")) {


 $sql="SELECT name, available  FROM compsections WHERE cname = '".$_POST["company_name"]."'"." ORDER by available desc;";
 $result = mysql_query($sql) or die ( mysql_error());
 $row = mysql_fetch_row($result);
 $section = $row[0]; // best choice to use if auto fill

  $query="SELECT * FROM compsections WHERE cname = '".$_POST["company_name"]."'"." ORDER by available desc;";
  $results = $db_handle->runQuery($query);
 echo '<option value="">Select Section</option>';


 }else{

       $query ="SELECT * FROM cemeteries";
       $results = $db_handle->runQuery($query);
       echo '<option value="">Select Cemetery</option>';
 }

    foreach($results as $cemetery) {
?>
    <option value="<?php echo $cemetery["name"]; ?>"><?php echo $cemetery["name"]." - ".$cemetery["available"]; ?></option>
<?php
    }

}
?>

编辑: 感谢您告诉我.hide和.show。我已经查找了示例,我可以找到的内容使用按钮单击。你会在php if..else中显示一个使用它们的例子吗?

提前谢谢你。 拉斯

1 个答案:

答案 0 :(得分:0)

我使用了以下内容:

<script>
function wholesection() {

$( "#whole-section" ).slideUp( "fast", function() {
  });
}
</script>

 echo '<script>',
     'wholesection();',
     '</script>'
;