検索結果のリンクを表示

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>検索結果のリンクを表示</title>
<link rel="stylesheet" href="main.css" type="text/css">
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript"><!--
function yahooSearch()
{
var kwd = $F("keywordYST");
var sURL = "yst.rb?query="+encodeURI(kwd);
new Ajax.Request(sURL, { method: "get", onComplete: displayData });
}
function displayData(httpObj)
{
$("dataArea").innerHTML = "";
var xmlObj = httpObj.responseXML;
var titleTag = xmlObj.getElementsByTagName("Title");
var resultTag = xmlObj.getElementsByTagName("Result");
for (var i=0; i<resultTag.length; i++)
{
$("dataArea").innerHTML += titleTag[i].childNodes[0].nodeValue;
$("dataArea").innerHTML += "<br>";
var urlTag = resultTag[i].getElementsByTagName("Url");
$("dataArea").innerHTML += urlTag[0].childNodes[0].nodeValue;
$("dataArea").innerHTML += "<br>";
}
}
// --></script>
</head>
<body>
<h1>検索結果のリンクを表示</h1>
<form onSubmit="yahooSearch();return false;">
<input type="text" value="Ajax" id="keywordYST">
<input type="button" value="検索" onClick="yahooSearch()">
</form>
<div id="dataArea"></div>
</body>
</html>
・サンプルを実行する

検索結果のタイトルにリンクを加える

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>検索結果のタイトルにリンクを加える</title>
<link rel="stylesheet" href="main.css" type="text/css">
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript"><!--
function yahooSearch()
{
var kwd = $F("keywordYST");
var sURL = "yst.rb?query="+encodeURI(kwd);
new Ajax.Request(sURL, { method: "get", onComplete: displayData });
}
function displayData(httpObj)
{
$("dataArea").innerHTML = "";
var xmlObj = httpObj.responseXML;
var titleTag = xmlObj.getElementsByTagName("Title");
var resultTag = xmlObj.getElementsByTagName("Result");
for (var i=0; i<resultTag.length; i++)
{
var urlTag = resultTag[i].getElementsByTagName("Url");
var linkURL = urlTag[0].childNodes[0].nodeValue;
var result = "<a href='"+linkURL+"'>";
result += titleTag[i].childNodes[0].nodeValue;
result += "</a><br>";
$("dataArea").innerHTML += result;
}
}
// --></script>
</head>
<body>
<h1>検索結果のタイトルにリンクを加える</h1>
<form onSubmit="yahooSearch();return false;">
<input type="text" value="Ajax" id="keywordYST">
<input type="button" value="検索" onClick="yahooSearch()">
</form>
<div id="dataArea"></div>
</body>
</html>
・サンプルを実行する
実践Web2.0 Ajax プログラミング入門 説明などは本書を参考にしてください。