[英]how to append a new hyperlink with a new id each time in a loop?
It's my second day on this project :\\ 这是我第二天做这个项目:\\
I'm trying to create is : creating a new <a>
element with a new href
and id
attributes in for
loop so that I can get each output of the API as a link. 我试图创建的是:在
for
循环中使用新的href
和id
属性创建一个新的<a>
元素,以便可以将API的每个输出作为链接。
This is my JS Code 这是我的JS代码
var one;
var two;
var hoba;
$(document).ready(function() {
$("#inp").keyup(function() {
hoba = $(this).val();
});
$("#but").on("click", function() {
var app = "https://en.wikipedia.org/w/api.php?action=query&format=json&prop=revisions&list=search&titles=Main+Page&rvprop=content&origin=*&srsearch=" + hoba;
$.getJSON(app, function(data) {
for (i = 0; i < data.query.search.length; i++) {
console.log(app);
one = $("<a></a>").text(data.query.search[i].title);
//var _href = $("a").attr("href");
$("a").attr("href", 'https://www.wikipedia.org/wiki/' + data.query.search[i].title);
$("a").attr("id", data.query.search[i].title);
two = document.createElement("p");
two.innerHTML = data.query.search[i].snippet;
$("body").append(one, two);
}
});
});
});
Use same object to set attributes 使用同一对象设置属性
one = $("<a></a>");
one.text(data.query.search[i].title);
one.attr("href", 'https://www.wikipedia.org/wiki/' + data.query.search[i].title);
one.attr("id", data.query.search[i].title);
Use jQuery( html, attributes )
to create HTML element. 使用
jQuery( html, attributes )
创建HTML元素。
var anchor = $("<a></a>", {
"text": data.query.search[i].title,
"href": 'https://www.wikipedia.org/wiki/' + data.query.search[i].title,
"id": data.query.search[i].title
});
$("body").append(anchor);
$(document).ready(function() { $("#inp").keyup(function() { hoba = $(this).val(); }); $("#but").on("click", function() { var app = "https://en.wikipedia.org/w/api.php?action=query&format=json&prop=revisions&list=search&titles=Main+Page&rvprop=content&origin=*&srsearch=" + hoba; $.getJSON(app, function(data) { for (i = 0; i < data.query.search.length; i++) { var anchor = $("<a></a>", { "text": data.query.search[i].title, "href": 'https://www.wikipedia.org/wiki/' + data.query.search[i].title, "id": data.query.search[i].title }); var p = $("<p></p>", { "html": data.query.search[i].snippet }); $("body").append(anchor); $("body").append(p); } }); }); });
You should to do minor changes in your code as below. 您应该对代码进行一些小的更改,如下所示。
Change code are in between // Changes Code Start and // Changes Code End 更改代码介于//更改代码开始和//更改代码结束之间
var one;
var two;
var hoba;
$(document).ready(function(){
$("#inp").keyup(function(){
hoba = $(this).val();
});
$("#but").on("click",function(){
var app = "https://en.wikipedia.org/w/api.php?action=query&format=json&prop=revisions&list=search&titles=Main+Page&rvprop=content&origin=*&srsearch="+hoba;
// Changes Code Start
$.getJSON(app,function(data){
for(i=0; i<data.query.search.length; i++){
console.log(app);
var dataAppend;
var title = data.query.search[i].title;
var href = 'https://www.wikipedia.org/wiki/' + data.query.search[i].title;
var id = data.query.search[i].title;
dataAppend = "<a href='"+href+"' id='"+id+"'>"+title+"</a>";
dataAppend += "<p>"+data.query.search[i].snippet+"</p>";
// \"
$("body").append(dataAppend);
}
});
// Changes Code End
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.