- ベストアンサー
javascriptとDOMを使って・・・
こんばんは、はじめまして。 javascriptとDOMを使って、既にあるxml文にデータを追加して保存する方法を探しています。 どなたかご存知の方がいらっしゃったら、ご助力お願いします。 方法でも、サイトでもなんでもかまいません、よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
まず、(Cookieを除いて)基本的にはクライアントサイドでデータを保存することはできないので xmlを保存するというのはサーバ側で保存する、という意味いいですよね? 今、仮にjavascriptでDOM⇒xml変換ができたとして、その保存方法を考えて見ます。 1.クライアントサイド(javascript)でDOM⇒XML変換。 XMLをサーバへ送信。 XMLをサーバに保存。 2.クライアントサイドでXMLに追加したい情報のみをサーバへ送信。 サーバ側の処理でXMLへ情報を追加。 XMLをサーバに保存。 どちらにしてもサーバサイドの処理が必要となります。 通常は2.の方法が取られます。 それは、javascriptでDOM⇒xml変換ができないからではなく 2.の方が送信するデータ量が少ないからです。 また、XML全文を送信するということは、意図しないXMLが送られてくる危険性もあります。 以上の点から、javascriptでDOM⇒xml変換を行う必要性はどこにもありません。 上記の話をすでに踏まえたうえでの質問であれば 下記サイトにDOM⇒xml変換する関数を紹介されていますので そちらをご参考ください。 http://blog.virtual-tech.net/2008/07/javascript-domxml.html
その他の回答 (2)
- yyr446
- ベストアンサー率65% (870/1330)
<<プログラムは保存の手段は入れていないのですが、 var lat = document.createElement("latlng"); var aaa = Fnode.getElementsByTagName("data"); aaa[i].appendChild(lat); ↑forでまわしています。 みたいなプログラムを考えていたんです>> これって、javascriptでやってもまったく意味がないと思います。 悩んでも時間の無駄です。(PHPやVBやJAVAなら保存できるのでよくやりますが..) だって、<latlang>要素作ったとして、それを解釈してくれるブラウザー なんてないでしょう。
- yambejp
- ベストアンサー率51% (3827/7415)
>javascriptとDOMを使って、既にあるxml文にデータを追加して保存する方法 クライアントサイドのjavascriptでは保存は無理では? サーバーサイドにうごくプログラムは想定していますか?
補足
早速、回答ありがとうございます。 プログラムは保存の手段は入れていないのですが、 var lat = document.createElement("latlng"); var aaa = Fnode.getElementsByTagName("data"); aaa[i].appendChild(lat); ↑forでまわしています。 みたいなプログラムを考えていたんですが、エラーが出てしまっている現状です。 var obXML = new ActiveXObject('microsoft.XMLDOM'); obXML.async = false; obXML.load('data.xml'); var Fnode = obXML.documentElement; という設定しています。 <datas> <data> <place>ああああ</place> <address>うううう</address> <tel>*********</tel> </data> </datas> みたいなxmlを作成しています。