IEでCookieのJavaScriptで「nullまたはオブジェクトではありません」

検索語句、「IE」「cookie」「javascript」「nullまたはオブジェクトではありません」で来られ方へのヒント。
「nullまたはオブジェクトではありません」をどうやって回避するか。

自分がハマッタ現象は、

カートのプログラムを使っていて、
フォームへの入力の手間を省くため、
JavaScriptでCookieを設定しておいて、
読みだそうとしたら、
IE6環境でアラート「nullまたはオブジェクトではありません」が出てしまう。

具体的なJavaScriptのコードは書きませんが、
アラートが出る理由の一つは、
読み出したクッキーの値を代入するための

・フォーム(<form></form>)がそもそも存在しない
・フォームのオブジェクト名(name=”hogehoge”)が違っている
・フォームのエレメント(たとえば、<input name=”hoge” type=”text” size=”10″ value=””>)がそもそも存在しない
・フォームのエレメント名(name=”hoge”)が違う

ので、代入ができなくなってしまってアラート(エラー)が出ると思われます。
まず、上記をチェックしてみて、解決をはかってみます。

これで解決できない場合、フォーム名やエレメント名が違ったら、読み出したクッキーの値を代入しない、として回避する方法もあります。

たとえば、

function hogehoge(){
・・・・・・・
・・・・・・・
}

function hogehoge(){
if (document.hogera.hogeren){
・・・・・・・
・・・・・・・
}
}

として「エレメントがあれば代入する」にしておけば回避できます。