フォームでSUBMITした先で、PHPを用いてCOOKIEを発行し、
JAVASCRIPTを使用して、COOKIEの有無により表示を変更させたい。
###発生している問題
キー名に日本語を扱う場合に、IEのみ判定がうまく動作しない。英語であれば問題なく判定できる。
Google Chrome、Mozilla Firefoxでは問題なく動作する。
ネットで調べたところ、日本語を扱う場合、JAVASCRIPT側で文字コードを変換する必要があるみたいだが、
変換方法に関する情報を見つけることができなかった。
###該当のソースコード
[フォーム側のコード(html)]
<body>
<form name="formA" id="formA" action="b.php" method="post">
<input type="submit" id ="test_value" name="test_value" value="はい">
<script type="text/javascript">
var target = document.forms['formA'].elements['test_value'].value;
var getCookieValue = function(key) {
var val = document.cookie.match(new RegExp('(^|\\s)'+key+'=([^;]+)'));
return !!val && unescape(val[2]);
};
if (getCookieValue(target) == "yes") {
document.write("回答送信済み");
}else{
document.write("初回");
};
</script>
</body>
[受信側のコード(PHP)]
<?php
$test_value = $_POST['test_value'];
setcookie($test_value, 'yes', time()+60*60*24, '/');
?>