嗨,大家好我试图在innerHTML中使用href但是我得到错误或者它正在工作。我想从API制作数据,可以点击而不是复制并将其放入浏览器中。当我尝试代码它将成为+ item.title而不是转到我从我的API获取数据的链接
<html>
<head>
<title>JSON/Atom Custom Search API Example</title>
</head>
<body>
<div id="content"></div>
<script>
function hndlr(response) {
for (var i = 0; i < response.items.length; i++) {
var item = response.items[i];
// in production code, item.htmlTitle should have the HTML entities escaped.
document.getElementById("content").innerHTML +="<br>"+ item.title + "<br>" +"<a href='+item.title'>Google</a>" ;
}
}
</script>
<script src="https://www.googleapis.com/customsearch/v1?q=query&cx=004123968310343535430%3Aaxml6iel9yo&key=AIzaSyDxPcphnrcN9_dfkRkFTbwkv44m1-HI1Hg&callback=hndlr">
</script>
</body>
</html>
答案 0 :(得分:4)
您的问题来自 +"<a href='+item.title'>Google</a>"
因为你的撇号包含撇号是“然后让你保持变量的实际值是为了确保变量或可执行文件不在封闭外部的内部”。
所以这应该适合你
document.getElementById("content").innerHTML +="<br>"+ item.title + "<br>" +"<a href='"+item.title+"'>Google</a>" ;
观察 href ='“+ item.title +”'
答案 1 :(得分:1)
您正在进行错误的连接,将 innerHTML 分配到内容。它应该是:
document.getElementById("content").innerHTML +="<br>"+ item.title + "<br>" +"<a href='"+item.title+"'>Google</a>";
你的功能应该是:
function hndlr(response) {
for (var i = 0; i < response.items.length; i++) {
var item = response.items[i];
// in production code, item.htmlTitle should have the HTML entities escaped.
document.getElementById("content").innerHTML +="<br>"+ item.title + "<br>" +"<a href='"+item.title+"'>Google</a>" ;
}
}