ChromeとかSafariでJavascriptの連想配列の値が更新されない。

IEでサンプルページのテストしてた時には気付かなかったんだけども、ChromeとSafariからだと表の値が更新できていなかった。
で、確認したら原因はここだったっぽい。

IEでテストするとこれでも配列の更新できてたんだけどなー。

うーん。って思いながら、こんな風に記述を変えてみた。

んー?ちゃんと表の更新が画面に反映されるようになりました。

このプログラムとしてはちゃんと動くようになったからいいんだけど、解せない。

 

連想配列の使い方には、連想配列.プロパティ名連想配列[“プロパティ名”]があって、だいたい使い方調べるとどっちでもアクセスできるって書いてあって、記述的に問題なさそーなんだけどなー。

試しにこんなコードを書いて実行しても、IEでもChromeでもちゃんと値の更新はできる。

何か他のコードが干渉してるんだろうか。

イベントハンドラ越しに更新してみる。

うーん。ちゃんと値の更新ができる。

さらに連想配列に関数を入れ子にして更新かけてみる。

やっぱりちゃんと更新できるんだよなー。

どうして、セルの値更新は連想配列.プロパティ名の記述で更新できてなかったんだろう。

とりあえず、連想配列[“プロパティ名”]に書き換えただけで更新通ったから、時間のある時にまた調べてみることにする。

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Related Post