Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于日期隐藏下拉选项_Javascript_Php_Jquery_Wordpress_Woocommerce - Fatal编程技术网

Javascript 基于日期隐藏下拉选项

Javascript 基于日期隐藏下拉选项,javascript,php,jquery,wordpress,woocommerce,Javascript,Php,Jquery,Wordpress,Woocommerce,我正在设计一个woocommerce wordpress网站,其中一家杂志的广告空间正在出售。我被要求在每个产品上添加一个属性,说明开始日期,但隐藏当前月份加上后一个月,以阻止人们购买空间并期望它立即开始 我提取了本示例中的HTML,以供参考 选择{ 边框颜色:#f1f1; 边框顶部颜色:#DDD; 左边框颜色:#DDD; 背景色:#F9F9F9; 颜色:#515151; 字体:12px塔荷马; 填充:8px; 边缘底部:7px; -webkit边界半径:3px; -moz边界半径:3px;

我正在设计一个woocommerce wordpress网站,其中一家杂志的广告空间正在出售。我被要求在每个产品上添加一个属性,说明开始日期,但隐藏当前月份加上后一个月,以阻止人们购买空间并期望它立即开始

我提取了本示例中的HTML,以供参考

选择{
边框颜色:#f1f1;
边框顶部颜色:#DDD;
左边框颜色:#DDD;
背景色:#F9F9F9;
颜色:#515151;
字体:12px塔荷马;
填充:8px;
边缘底部:7px;
-webkit边界半径:3px;
-moz边界半径:3px;
边界半径:3px;
webkit过渡:所有0.3轻松输入输出;
-moz转换:所有0.3秒都易于输入输出;
-o-过渡:所有0.3秒的缓进-缓出;
-ms转换:所有0.3秒轻松输入输出;
过渡:所有0.3秒的缓进缓出;
}

广告大小
选择一个选项
第八页
四分之一页(肖像)
四分之一页(横向)
半页(肖像)
半页(横向)
整版(标准版)
整版(高级版)
封面横幅
广告期
选择一个选项
1个月
3个月(节省10%)
6个月(节省15%)
12个月(节省20%)
开始月份
选择一个选项
简
二月
破坏
四月
也许
六月
七月
八月
九月
十月
十一月
12月

您可以将选项列表替换为:

<option value="">Choose an option</option>
<?php
for ($m=1; $m<=12; $m++) {
    $currentMonth = date('n');
    $nextMonth = date('n') == 12 ? 1 : date('n') + 1;

    if ($m == $currentMonth || $m == $nextMonth) continue;

    $month = date('M', mktime(0,0,0,$m, 1, date('Y')));

    echo '<option value="'.$month.'" class="attached enabled">'.$month.'</option>';
}
?>
选择一个选项
这将提供与您发布的选项相同的列表,减去当前和下个月的选项


正如我所说,我会在
PHP
中完成。您需要找出当前月份是哪一个,并且不要在列表中为这个月或下个月添加
选项。您可以使用以下内容:

<?php
    $months = array("Jan", "Feb", ..., "Dec");
    $thismonth = date('M');
    $date = date("Y-m-d");
    $date = strtotime(date("Y-m-d", strtotime($date)) . " +1 month");
    $nextmonth = date("M",$date);
    foreach ($months as $month) :
        if ($month != $thismonth && $month != $nextmonth):
            echo "<option value=\"" . $month . "\">" . $month . "</option>";
        endif;
    endforeach
?>


基于wordpress是使用PHP开发的事实,我很想在那里进行开发,而不是将其暴露在前端并“删除”用javascript来解决这个问题。
在JS或PHP中,最好的解决方法是什么?
这个问题主要是基于观点的
很多好的问题都会根据专家的经验产生一定程度的观点,但这个问题的答案往往几乎完全基于观点,而不是事实、参考资料,或特定专业知识。
-生成选项以创建属性,即:
数据开始日期=“xxx”
然后在JS中根据条件显示/隐藏所需内容。当你有自己的代码时,在这里发布道歉,我不是说用JS或PHP最好,我的意思是问最好的方法是什么,我会怎么做。