私のサイトには、人々が使用しているデバイスの種類を示すCookieが設定されています。
値は次のとおりです
- S
- M
- T
- D
Cookieの値は、MS、TS、またはDSのいずれかになります。
ユーザーが手動でCookieを更新できるフォームを作成したいのですが、フォームを送信するとCookieが更新されますが、フォームには現在のCookie値がすでに選択されている必要があります。
このコードを試しましたが、未定義のCookie値を取得します。
ここにフォームがあります
<form name="devicePrefs">
<input type="radio" name="deviceType" value="D">Desktop<br>
<input type="radio" name="deviceType" value="T">Tablet<br>
<input type="radio" name="deviceType" value="M">Mobile<br>
<input type="checkbox" name="skipSeat" value="S">Skip Seating Plan<br>
<input type="button" value="Set to Cookie" onClick="storeValues()">
</form>
これが私が使ったJavaScriptです
var today = new Date();
var expiry = new Date(today.getTime() + 30 * 24 * 3600 * 1000); // plus 30 days
function setCookie(name, value) {
document.cookie=name + "=" + escape(value) + "; path=/; expires=" + expiry.toGMTString();
}
function storeValues() {
setCookie("ATGDevicePrefs", devicePrefs.deviceType.value, devicePrefs.deviceType.skipSeat);
}
助けてくれてありがとう。