0

これは私のページのヘッドセクションにあります

<script type="text/javascript">
        function makeCookie(name)
        {
            alert("c is for cookie");
            days=30; // number of days to keep the cookie
            var myDate = new Date();
            myDate.setTime(myDate.getTime()+(days*24*60*60*1000));
            expires="myDate.toUTCString();
            document.cookie="pull=" + name;
            alert("c is for cookie");
        }
    </script>

そして、これに似た一連のリスト項目:

<a href="#tab2" onclick="makeCookie("LastName FirstName")">LastName FirstName</a>

アラートが表示されず、Cookie が設定されていません。だから私は何か間違ったことをしていることを知っています。Chrome で JavaScript コンソールをチェックアウトすると、トークン エラーも表示されます。だから、どこかに吊り下げ金具があると思いますが、見つかりません。

4

3 に答える 3

1

JSLintは、この比類のないオープンクォートを初心者向けに示しています。

expires = "myDate.toUTCString();
          ^

さらに、onclick値の引用符が間違っています。HTML属性にすでに存在する二重引用符とのあいまいさを避けるために、内側のJavaScript引用符には一重引用符を使用する必要があります。

<a href="#tab2" onclick="makeCookie("LastName FirstName")">LastName FirstName</a>
                                    ^                  ^
于 2012-08-01T18:52:24.410 に答える
0

構文の強調表示を見てください。区切り属性でonclick使用しようとしているため、属性が途中で閉じられています。これを変える:""

<a href="#tab2" onclick="makeCookie("LastName FirstName")">LastName FirstName</a>

これに:

<a href="#tab2" onclick="makeCookie('LastName FirstName')">LastName FirstName</a>
于 2012-08-01T18:47:13.183 に答える
0

onclickパラメータ toと同じタイプの引用符を使用しているため、 makeCookie"Lastname.Try:

<a href="#tab2" onclick='makeCookie("LastName FirstName")'>LastName FirstName</a>
于 2012-08-01T18:47:32.403 に答える