フォームの選択メニューで選択した会社名の株価情報をXML文書から取り出し表示する。
[サンプルHTML文書を表示](下のフレームに)
XMLソース
<?xml version="1.0" encoding="Shift_JIS" ?>
<root>
<title>2003年11月05日の東証株式第一部情報</title>
<info><name>銘柄</name><end>終値(円)</end><total>出来高(千株)</total></info>
<data>
<kabu><name code="6752">松下</name><end>1529</end><total>12302</total></kabu>
<kabu><name code="6753">シャープ</name><end>1786</end><total>3964</total></kabu>
<kabu><name code="6758">ソニー</name><end>4030</end><total>8220</total></kabu>
<kabu><name code="6764">三洋</name><end>516</end><total>7551</total></kabu>
<kabu><name code="6501">日立</name><end>692</end><total>21896</total></kabu>
<kabu><name code="6502">東芝</name><end>440</end><total>17832</total></kabu>
<kabu><name code="6701">NEC</name><end>1027</end><total>19229</total></kabu>
<kabu><name code="6702">富士通</name><end>708</end><total>16634</total></kabu> </data>
<end>以上です(2004/5/1)</end>
</root>
XSLソース
<SCRIPT language="JavaScript"><!--
var xmlobj; //グローバル変数
//ページ読み込み時にXML文書も同時に読み込んでおく
function loadXML(){
xmlobj=new ActiveXObject("MSXML2.DOMDocument");
xmlobj.async=false;
xmlobj.load("select01.xml");
}
function SelectName(n){
var objNodeList = xmlobj.selectNodes("//name");
for(i=0;i<objNodeList.length;i++){
if(objNodeList(i).text == n){
var str = n + "の<br>";
str += " コード番号は:" + objNodeList(i).getAttribute("code") + "<br>";
str += " 終値は:" + objNodeList(i).nextSibling.text + "円<br>";
str += " 出来高は:" + objNodeList(i).nextSibling.nextSibling.text + "(千株)";
data.innerHTML = str;
}
}
}
//--></SCRIPT>
</HEAD>
<BODY onload="loadXML()">
<H4>2003年11月05日の東証株式第一部情報</H4>
<form name="form1">
<p>会社名を選択:
<select name="sName" onchange = "SelectName(this.value)">
<option value="松下" selected>松下</option>
<option value="シャープ">シャープ</option>
<option value="ソニー">ソニー</option>
<option value="三洋">三洋</option>
<option value="日立">日立</option>
<option value="東芝">東芝</option>
<option value="NEC">NEC</option>
<option value="富士通">富士通</option>
</select>
</p></form>
<div id="data" style="margin-left:30px;border:1px solid green">(ここに情報を表示)</div>
end(04/5/1)