人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

下記のようなサンプルで、連想記憶配列urllistをXML化する方法を教えてください。
Prototype.js(http://prototype.conio.net/)でできそうなんですが・・・
<html>
<head>
<script language="JavaScript">
function test()
{
var urllist;
var element;
urllist = form1.urllist.value;
url = urllist.split("\n");
for( i = 0; i < url.length; i++ ){
element = url[i].split("\\");
url[i] = new Array();
url[i]["element"] = element;
/*
for( j = 0; j < url[i]["element"].length; j++ ){
alert( url[i]["element"][j] );
}
*/
}
}
</script>
</head>
<body>
<form name="form1">
<input type="button" onClick="test()" value="test" /><br>
<textarea name="urllist" cols="100" rows="10">
C:\hoge\foo\aaa.html
C:\hoge\foo\bbb.html
C:\hoge\foo\bar\ccc.html
C:\hoge\hogehoge\123.html
C:\hoge\456.html
</textarea>
</form>
</html>
</body>

●質問者: P-mako
●カテゴリ:コンピュータ インターネット
✍キーワード:AAA BAR CCC hoge HTML
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tikirou
●10ポイント

以下のページにサンプルがありました。

参考になりますでしょうか?

http://www.virtual-tech.net/blog/2006/12/prototypejs-xmljavascri...

◎質問者からの返答

このサンプルの

var h = $X(h0);

の箇所を

var h = $X(urllist);

に変更してやってみたのですが、NGでした。


2 ● STRing
●60ポイント ベストアンサー

#1 のリンク先を統合してこのようにしたら動作しましたよ。

<html>
<head>
<script type="text/javascript" src="./prototype.js"></script>
<script language="JavaScript">

var extension = {
 toXMLString: function() {
 return this.map(function(pair) {
 return "<"+pair.key+">"+ ( 
 typeof pair.value == 'string' ? pair.value : $X(pair.value).toXMLString()
 ) +"</"+pair.key+">";
 }).join('');
 }
}

function $X(object) {
 var hash = $H(object);
 Object.extend(hash, extension);
 return hash;
}



function test()
{
var urllist;
var element;
urllist = form1.urllist.value;
url = urllist.split("\n");
for( i = 0; i < url.length; i++ ){
element = url[i].split("\\");
url[i] = new Array();
url[i]["element"] = element;
/*
for( j = 0; j < url[i]["element"].length; j++ ){
alert( url[i]["element"][j] );
}
*/
}

var h = $X(url);
alert(h.toXMLString());

}
</script>
</head>
<body>
<form name="form1">
<input type="button" onClick="test()" value="test" /><br>
<textarea name="urllist" cols="100" rows="10">
C:\hoge\foo\aaa.html
C:\hoge\foo\bbb.html
C:\hoge\foo\bar\ccc.html
C:\hoge\hogehoge\123.html
C:\hoge\456.html
</textarea>
</form>
</html>
</body>

と云うか、最終的に XML化したいものは変数 url に入っているのでは?

urllist は textarea の中身を引っ張った後は書き込まれていませんし。

question:1166599547 ダミー

◎質問者からの返答

ご回答ありがとうございます。

ご指摘のとおり動作しました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ