我仍然是网络技术的新手,我有几个问题符合以下代码。
我正在尝试从另一个javascript函数displayTable()调用函数getDetails()。 单击“我的CD事实”按钮调用displayTable()。
嗯,它不适合我。我猜它有点蠢,但我无法搞清楚。我尝试用firebug进行诊断,并说没有定义getDetails()。
另外,我有一个基本的css文件,用于以特定样式显示表。这也不起作用。是因为我把它连接在体内而且我在头部使用它?
<script type="text/javascript">
var xmlDoc;
function displayTable()
{
var artistName;
if (window.XMLHttpRequest)
{
xmlDoc=new window.XMLHttpRequest();
xmlDoc.open("GET","Artists.xml",false);
xmlDoc.send("");
xmlDoc=xmlDoc.responseXML;
}
else if (ActiveXObject("Microsoft.XMLDOM"))
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load("Artists.xml");
}
document.write("<table class=\"artistTable\" border='1'>");
document.write("<th>Artist</th> <th>Title</th>");
var x=xmlDoc.getElementsByTagName("CD");
for (i=0;i<x.length;i++)
{
artistName = x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue;
document.write("<tr><td><a href=\"javascript:getDetails(artistName );\">");
document.write(artistName);
document.write("</a></td></tr>");
}
document.write("</table>");
}
function getDetails(artistName )
{
alert(artistName);
}
</script>
</head>
<body>
<link rel="stylesheet" type="text/css" href="style.css">
<form>
<input type="button" value="My CD Facts" onclick="displayTable()"/>
</form>
</body>
</html>
欢呼声
答案 0 :(得分:2)
getDetails()不是Javascript buit-in函数。它是用户定义的功能。编写Head First Ajax一书的人定义了第24页的getDetails()版本。
答案 1 :(得分:1)
document.write("<tr><td><a href=\"javascript:getDetails(" + artistName + ");\">");
答案 2 :(得分:1)
一些小错误。
rony说,但有几个单引号。
document.write(“&lt; tr&gt;&lt; td&gt;&lt; a href = \”javascript:getDetails('“+ artist +”'); \“&gt;”);