
JavaScript側でのXML作成の方法
Ajax開発の経験は始めてなので勝手がわかっていないのですが
やりたい事はサーバー側からXMLデータを取得して
JavaScript側でXMLを編集してサーバーに書き戻すような事がしたいのです。
このような場合、DOMツリーをXMLファイルにシリアライズするには
IEだとActiveXObject("Microsoft.XMLDOM")、FireFoxだとXMLSerializer()を使うと
いったようにブラウザごとに処理を分けねばなりません。
これは面倒なのであまりやりたくありません。
あとはベタなテキストとして
var xml = "<?xml version='1.0' encoding='utf-8'?>" +
"<root><element>test</element></root>"
と書いていくくらいしか思いつかないのですが
ブラウザ間ごとの違いを吸収してくれる
XML編集用の便利なJavaScriptライブラリなどは存在したりするものでしょうか?
(jQueryなどがそうのような機能を内包してたりする?)
少し調べてみた限りでは無さそうに感じたのですが
処理としてはよくありそうな事なのでお聞きしてみました。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
No.2
- 回答日時:
サーバーから取得したxmlをそのままjQueryに食わせればOK?
jQueryのAJAX通信success時に下記のような関数を割り当て。
var ajax_success = function(data, dataType){
//data(xml)の解析結果を取得する。
var xml = jQuery(data);
//<id>test</id>を<id>neko</id>に変更する。
xml.find("id").each(function(){
jQuery(this).text("neko");
});
//xml.html()で変更したxmlをテキストで取得する。
alert(xml.html());//ためしに表示
//サーバーに再度送る場合には、xml.html()で取得したテキストをPOST。
};
No.1
- 回答日時:
処理としてはよくありそうな事なのでお聞きしてみました。
==>全然ありそうじゃ無いですよ。
javascriptは入出力機能はありません。
たとええXMLオブジェクトを作っても、テキストとして表示したり、
サーバーにテキストデータとしてPOSTはできますが...
サーバー側のPHPとかで作った方がよっぽど幸せになります。
※サーバーから取得したXMLをパースして、HTMLのDOM等に加えたり、
javascriptのJSONにするようなツールはいっぱい見つかるでしょうが....
この回答への補足
>==>全然ありそうじゃ無いですよ。
>javascriptは入出力機能はありません。
何に対しての入出力のことを指しているのでしょうか?
データの取得にXMLを利用している以上
JavaScript側で編集したデータをXMLでサーバに送り返したくなるのは
そう不自然な発想ではない気がします。
Google Docやカレンダーのようなアプリは
JavaScript側で編集したデータをサーバに書き戻しているはずなので
「ありそうでは無い」ことの根拠がよく分かりません。
>サーバー側のPHPとかで作った方がよっぽど幸せになります。
これはJavaScript側でベタテキストとしてサーバーに送って
XMLに整形するのはサーバーサイドのプログラムに任せるということですよね?
それも一つの解ではあると思いますが
汎用フォーマットに整形して送ってくれればサーバーサイドは
既存のパーサーに食わせるだけで済むのに対して
妙なフォーマットのテキストをパースする処理を自前で実装することが
何故幸せなのか理解できません。
JSONなら性質上、JavaScriptから生成するのは容易いので
サーバーサイドでJSON→XMLに変換処理くらいを書けばいいのかもしれませんが。
その辺りをもう少し詳しくお聞かせ願えないでしょうか
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- XML XML同じ名前の要素を自動で集約するツール 1 2022/04/11 09:21
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- AJAX 自作の地図をグーグルマップのようにしたい 3 2022/11/15 11:53
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
- WordPress(ワードプレス) ワードプレスにて .xmlファイルの使い方をご存知の方、よろしくお願いいたします。 2 2022/09/30 00:55
- HTML・CSS ホームページのHTMLサイトマップを自動作成する方法を探しています。 1 2023/05/17 21:36
- 数学 この数学問題、スマートに解く方法を教えてください。 3 2023/01/26 23:17
- アプリ おすすめのパスワード管理アプリを教えてください。(iOSとWindows対応) 4 2023/01/19 02:08
- XML iPhoneでXMLファイルを開くにはどうしたら良いのでしょうか? 1 2022/09/05 18:00
- その他(IT・Webサービス) 見たことのない形式で日付が表示されているのでそれを解析してほしい 3 2023/01/23 16:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
AjaxでDBと連携した動的リスト...
-
サーブレットから送られてきた...
-
CGIカレンダー
-
FFFTPでデータの更新ができません
-
【Ajax】改行を含めたデータを...
-
JavaScriptだけで画像アップロ...
-
ajaxでhtmlを返して画面に描画…...
-
CGIスクリプトについて。
-
jsonテキストデータの並び替え...
-
ASP.NET(VB)VBソースからJavas...
-
DelphiでSelectDirectoryを..
-
subversionでコミットしたらftp...
-
【JavaScript】confirmのボタン...
-
windows11ではアンドロイドアプ...
-
長時間かかるPHPプログラムの処...
-
呼び出し元のURLを知りたいのです
-
8ビットダウンカウンタをVerilo...
-
HTMLでDBからデータを表形式で...
-
include 再読み込み
-
テキストファイルの内容を変数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ajaxでhtmlを返して画面に描画…...
-
【Ajax】改行を含めたデータを...
-
ローカルネットワーク内での502...
-
innerHTMLで表示完了後に、Ajax...
-
jQueryの$.postの戻り値による...
-
データ受け渡しについて
-
Ajaxで最新の情報が取得できない
-
カーソルの動きに合わせてDBか...
-
HTMLでリアルタイムグラフを作...
-
ASP+IIS5.1+SQLServer
-
カウントダウンを表示
-
大量のデータを表として展開す...
-
JavaScript側でのXML作成の方法
-
Ajaxでpostした内容のresponse...
-
Response.Write(変数)
-
【JavaScript】confirmのボタン...
-
jsonテキストデータの並び替え...
-
ASP.NET(VB)VBソースからJavas...
-
HTMLでDBからデータを表形式で...
-
DirectXとOpenGLはどちらが動作...
おすすめ情報