我有一个对维基百科的ajax请求,并且我的目标是信息框,以获取和附加用户输入城市的标志图像。这是电话:
$.ajax({
url: 'http://en.wikipedia.org//w/api.php?action=parse&format=json&page='+city+'&prop=images&prop=text',
dataType: 'jsonp',
success: function (response) {
console.log(response);
var readData = $('<div>' + response.parse.text["*"] + '</div>');
var box = readData.find('.infobox');
flagURL = box.find('img').first().attr('src');
$('#flag').append('<div><img src="'+ flagURL +'"/>')
}
});
问题是定位第一个img有时会起作用,有时候不起作用。对于不同的城市页面,不可能知道标志图像是第一/第二/等。我已经尝试将.get('Flag'),.contains('Flag')和.match与'Flag'正则表达式链接到flagURL的末尾,以及选择第n个img child并使用jquery的:eq选择器,但似乎没有什么可以做的。我认为正则表达式是唯一可靠的赌注,但从未在jQuery中使用正则表达式。
答案 0 :(得分:1)
你可以使用jquery包含这个
的选择器$( "img[src*='Flag']" )
所以上面会搜索src包含标志的图像