当我点击标题时我想去相关的维基百科文章。我尝试了包装方法。但它没有发生。请帮忙。 这是代码。
$(function(){
$('#bar').click(function(){
$('#bar').hide().fadeOut(1000);
$('#search_box').show().fadeIn(2000).focus();
$('a,p').hide();
$('.btn').show();
});
$('#clear').click(function(){
$('#search_box').val('');
});
$('#search_box').keypress(function(e){
if(e.which == 13)
{
getData();
}
});
$('#search').click(function(){
getData();
});
function getData()
{
$('.title ,.card').remove();
var searchQuery = $('#search_box').val();
$.getJSON('https://en.wikipedia.org/w/api.php?format=json&action=query&list=search&srsearch='+searchQuery+'&utf8&callback=?', function(data){
console.log(data);
var query = data.query.search;
for(var i=0;i<query.length;i++)
{
**$('<div class="title">'+query[i].title+'</div>').addClass('title').wrap('<a href="http://en.wikipedia.org/wiki/"'+encodeURIComponent(query[i].title)+'"> </a>').appendTo('body');**
$('<div>'+query[i].snippet+'</div>').appendTo('body').addClass('card');;
}
});
}
});
答案 0 :(得分:0)
您可以使用.wrapInner()
方法将div
元素
$('<div class="title"></div>')
.wrapInner("<a href='http://en.wikipedia.org/wiki/"+encodeURIComponent(query[i].title)+"'>"+query[i].title+"</a>")
.appendTo('body');
在您的.wrap()
方法中,您的链接没有任何价值。
.wrap('<a href="http://en.wikipedia.org/wiki/'+encodeURIComponent(query[i].title)+'"> </a>')
^
将query[i].title
值添加到链接。并wrapInner()
包围<div class="title">
内容
检查工作代码: codePen