A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
希望する回答でなくて申し訳ないが、
responseXMLで取得できない理由はあっさり流さず追及しておいた方がいいかも。
(取得はできてるけどパースエラーになっていて希望する結果が得られていないだけとか?)
代替手段であれこれ余計にいぢりまわすのは、responseXMLで取得できない理由に納得できた後でも遅くないと思います。
No.1
- 回答日時:
何故responseXMLで取れないのかは知らんが(MIME-Typeが間違っているとか?)
何も考えなくて良いなら,
別な時に作った「ユーザーに入力してもらったソースをdocumentの特定の要素に追加するアプリ」のソースから抜粋
/*
ボタンを押したことでイベント発動。input[@id='input']の要素には
XMLの断片となる文字列が入ってます。
*/
var input = document.getElementById("input").value;
var parser = null;
var dom = null;
if(document.implementation.hasFeature('LS', '3.0')){
var LSI = document.implementation.createLSInput();
LSI.stringData = input;
parser = document.implementation.createLSParser(document.implementation.MODE_SYNCHRONOUS,null);
try{
dom = parser.parse(LSI);
}catch(e){
dom = null;
}
}
でこの後
var output = document.getElementById("output");
output.appendChild(document.importNode(dom.documentElement,true));
とかやって実際,Opera 9.52 Alpha Build 10082で動作していました。
#Gecko系と違って
catch(e if e instanceof SyntaxError)
とかやると文法エラーになったので控えめ
======================================
オマケ:
★俺は「バッドノウハウで同じページにソース載せるなら非公式なページとして分けろ(なのでラッパー的な回避策にもあまり好感を持っていない)」と思っているが,実際に書いたソースはそうなっていないので反面教師だと思ってそのソースまるごとは載せていない。
これから書くこともあまり気がのらない。
Gecko系・Safariでは上記のソースではなく
【非標準の】DOM Parserを使ってDOM Documentを生成することになるだろう。
http://developer.mozilla.org/en/docs/DOMParser
ただし,このやり方は問題があって
https://bugzilla.mozilla.org/show_bug.cgi?id=289 …
(最初から文字列にparsererror要素が含まれていたのか,実際にparseが失敗したのかの区別が付かない)
ってのがまだ解決してない。
https://bugzilla.mozilla.org/show_bug.cgi?id=155 …
のリンク先の話を流し読みすると★印の姿勢取ってて今後自分は大丈夫なんだろうかと
かなり深く悩むんだけど。
やけくそになっているからバージョンを直接していしているがきちんと調べることを勧める。
IE用には
dom =new ActiveXObject("msxml2.domdocument.6.0");
dom.loadXML(input);
if(dom == null){
throw new SyntaxError("パース出来ませんでした。");
}
ってコードが書かれている。
===
で、まあここまでしか多分質問者さんは使わないだろうけどさらに愚痴っておく。
ただし,msxml2.domdocument.6.0ならともかく
DOM2 のimportNodeなんてメソッドを
IEのdocumentは搭載していないので
どうしようかな、と思って手が止まっている。
(確かMSDNによるとMSXML 5.0以降対応。
http://msdn.microsoft.com/en-us/library/ms767525 …
ちなみにMSXML 5.0はOffice用
http://blogs.msdn.com/xmlteam/archive/2006/10/23 …
なので現実的にはMSXML 6で決まりかなあ。
)
で,どうしようか考えてる。
まだこの辺は読んでない
(再帰的にノードタイプとノード名と内容を調べてdocument.createElement等で生成していく
ラッパー的な話になっているんだろうとは思うけど)
http://www.alistapart.com/articles/crossbrowsers …
http://d.hatena.ne.jp/amachang/20071112/1194856493
なんてものがあるけど,documentだけでresponseXMLに対してはevaluateメソッドを追加してくれてなかった、というのがあったのでimportNodeに活路を求めようとしたけどないので撃沈。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP JSON_UNESCAPED_UNICODEをつけてもJSONの日本語がブラウザで表示されない 1 2022/11/16 07:22
- その他(プログラミング・Web制作) Pythonで会員サイトの自動ログイン ID Nameがない 1 2022/12/16 02:09
- PHP preg_matchで Warning: Undefined variableが出ます 1 2022/11/15 17:06
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript Javascriptを使ってQRコード読み取り、取得した情報をPOSTしたいと思っています。 1 2023/04/28 15:18
- Visual Basic(VBA) テーブルを配列に入れて、元のテーブルの行番号を取得したい 1 2022/08/16 20:15
- Visual Basic(VBA) Selenium Basicの件 5 2023/04/10 20:55
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- 英語 I'd rather you stopped sending me ★a text★ ??? 1 2022/12/28 17:06
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaScript window.openで開く...
-
javascriptのdocument.allにつ...
-
FireFoxのjavascriptで自動でキ...
-
Null またはオブジェクトではあ...
-
Javascriptのhtml出力についてa...
-
プルダウンを複数使い、ページ...
-
選択によってsubmitボタンの色...
-
LaTeX:数式を等号揃えにする方法
-
VBAでIEのボタンを押してメッセ...
-
excle VBA とweb上の検索を利用...
-
このjavascriptのif文、条件式...
-
google apps scriptの終了のさせ方
-
idを使わずにonclickで自身の要...
-
Boolean型配列中のTrueの有無を...
-
JavaScriptで決まった「時刻」...
-
C#テキストボックスの文字を配...
-
関数でy=g(x)のgとは何の略です...
-
jspからjavascriptの変数引継ぎ
-
jqGridについて
-
ActiveXobjectが作成できない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
codejump 模写コーディングgall...
-
このjavascriptのif文、条件式...
-
文字を一文字ずつ表示
-
DOM要素を削除しても、イベント...
-
FireFoxのjavascriptで自動でキ...
-
Javascriptのhtml出力についてa...
-
excle VBA とweb上の検索を利用...
-
Null またはオブジェクトではあ...
-
webページ上のTabキーの動き
-
XMLでのAttributeを持ったNode...
-
JavaScript window.openで開く...
-
ブラウザのウィンドウサイズに...
-
javascriptのdocument.allにつ...
-
javascriptの基本的なことだと...
-
responseTextについて
-
showModalDialogで開いた画面を...
-
iframeのソースを取得したい
-
removeEventListenerの必要性
-
クリッカブルマップのリンク部...
-
ラジオボタンをクリックしたい
おすすめ情報