如何在网页上制作日期下拉菜单

时间:2013-01-07 20:05:54

标签: php html date drop-down-menu

我有一个带PHP的Web服务器,我需要能够选择的某些文件夹下有几个文件。文件名的格式为“YYYY-MM-DD_XXXXXXX.php”。 Y代表年份,M代表月份,D代表日期。我需要做的是创建一个动态下拉菜单,其中包含文件夹中某个文件的日期。例如。有两个文件:2013-01-01_xxxxx.php和2013-01-07_xxxx.php,这样下拉列表中应该有两个选项,分别是“2013-01-01”和“2013-01- 07" 。一旦我选择其中一个,对应的文件将显示在网页的下方。我不知道如何制作这样的下拉菜单。

1 个答案:

答案 0 :(得分:2)

<select>
    <option value="one">First Text</option>
    <option value="two">Second Text</option>
</select>

创建一个下拉列表。由于您希望动态分配值,您可以这样做:

foreach (myArray as row) {
   echo '<option value='" . $row['value'] . '">' . $row['text'] . '</option>';
}
echo '</select>';

通过将选择内容发布到将从文件中读取的页面来动态创建菜单...痛苦。

我要做的是使用jQuery(特别是ajax)从文件中读取。

让我们说:

<?php
$cities = array(
    'IL' => array( 'Chicago', 'Naperville', 'Decatur', 'Saint Charles' ),
    'IN' => array( 'Gary', 'Miller', 'Portage', 'Merrillville' )
);

print json_encode( $cities[ $_POST[ 'selection' ] ] );
exit;
?> 

使用json_encode函数在页面中传递打印(或回显)结果。

你的javascript会是这样的:

$(document).ready(function() {

$('#selection').change(function() {
    $.post(
        'some-url.php',
        {
            'selection':$('#selection').val()
        },
        function(data, textStatus) {
            $.each(data, function(index, value) {
                $('#city').append('<option value="' + value + '">' + value + '</option>');
            });
        },
        'json'
    );
});

});

这是一个相当不错的教程:http://remysharp.com/2007/01/20/auto-populating-select-boxes-using-jquery-ajax/http://www.9lessons.info/2010/08/dynamic-dependent-select-box-using.html

以及示例:http://jsfiddle.net/vjkaG/http://jsfiddle.net/g7wzT/1/