如何用php从Combobox中选择月份?

时间:2014-04-15 15:59:48

标签: php html combobox

我有一个组合框,它由月组成。以下代码:

<select name='Bmonth' id='Bmonth'>
  <option value='1'>January</option>
  <option value='2'>February </option>
  <option value='3'>March</option>
  <option value='4'>April</option>
  <option value='5'>May</option>
  <option value='6'>June</option>
  <option value='7'>July</option>
  <option value='8'>August</option>
  <option value='9'>September</option>
  <option value='10'>October</option>
  <option value='11'>November</option>
  <option value='12'>December</option>
</select>

我希望收到的页码是4,Combobox可以查看'April'。例如,如果页面http // test.php?page = 4的地址,4月组合框视图...组合框代码没有变化!

3 个答案:

答案 0 :(得分:0)

您正在传递GET参数,所以:

<?php
//checking if GET URL exists, if yes store it in variable
$page = (isset($_GET['page']))?$_GET['page']:''; 
?>
<!-- checking if variable value is 4, if yes, select the option -->
<option value='4' <?php echo ($page==4)?'selected':''?> >April</option>

依此类推所有选项。

您也可以通过javascript执行此操作,但由于您未在自己的问题中添加javascript标记,因此我不会解释。

答案 1 :(得分:0)

定义一个月数组。通过$_GET接收月份编号并将其存储在变量中。从数组中获取相应的月份名称。循环遍历月份数组,并在每次迭代时检查用户选择的月份是否与当前月份($name)相同。如果是,请将$selected设置为selected='selected'。如果不是,请将其设置为空字符串。打印<option>代码。

<select name='Bmonth' id='Bmonth'>
    <?php
        $months = array(
            1=>'January','February','March','April',
            'May','June','July ','August','September',
            'October','November','December',
        );

        $key = $_GET['page'];     // Month number
        $default = $months[$key]; // Month name

        foreach ($months as $num => $name) {
            $selected = ($name == $default) ? "selected='selected'" : "";
            printf('<option value="%s" %s>%s</option>', $num, $selected, $name);
        }
    ?>
</select>

答案 2 :(得分:0)

SELECT TAG中选择特定选项的工作原理如下 -

<SELECT>
<OPTION>Something
<OPTION SELECTED>Something Else       // This option gets selected


在您的情况下,您可以使用attr selected jquery分配prop()

<?php
   $page = isset($_GET['page']) ? $_GET['page'] : "";
?>

$(document).ready(function(){
    $("select").val("<?php echo $pg ?>").prop('selected', 'true');
});