0

我正在制作一个年龄验证模式,但我有点卡住了。

在第 4-7 行,我创建了一个 javascript 日期对象并尝试用月份、日期和年份填充它,但对我来说很明显,第 5-7 行中的每一行都覆盖了前一个。

$('#tier3').change(function(){
    var tier1 = $('#tier1').find(":selected").text();
     var tier2 = $('#tier2').find(":selected").text();
     var tier3 = $('#tier3').find(":selected").text();
     var userDOB = new Date();
     userDOB.setMonth(tier1);
     userDOB.setDate(tier2);
     userDOB.setFullYear(tier3);
     var now = Date.now();
     userAge = now - userDOB;
     if( userAge >= 588591547188){
        set_popup_cookie();
        popup_wrapper.style.visibility="hidden";
     }else {
        /*  window.location = "http://www.smokefree.gov/"; */
     }
});

我还尝试将第 4-7 行替换为

var userDOB = Date.parse(tier . " " . tier2 . ", " . tier3 );

但是我遇到了语法错误

4

1 回答 1

0

你可以使用Date构造函数new Date(year, month, day [, hour, minute, second, millisecond]);

如下

var userDOB = new Date(tier3, tier2, tier1);
var now = Date.now();
userAge = now - userDOB;
 if( userAge >= 588591547188){
    set_popup_cookie();
    popup_wrapper.style.visibility="hidden";
 }else {
    /*  window.location = "http://www.smokefree.gov/"; */
 }

在计算年龄之前检查是否tier3, tier2, tier1有期望值

于 2013-08-27T05:19:36.840 回答