通过mySQL表中的JSON(和php),我找到了与给定关键字匹配的所有数据集。然后,我想使用返回数组中的URL附加到HTML元素。
$.ajax({
url: 'actions/del_and_find_pixa_keywords.php',
type: 'POST',
data: {
keyword: pixaKeyword.val()
},
success: function(data){
pixaSearchResults.empty();
data.forEach(function(i,v){
pixaSearchResults.append('<a href="'+v.preview_url+'" target="_blank"><img src="'+v.large_img_url+'" alt="'+v.keyword+'" class="fn_pixaImgResults cms_width100" data-large-url=""></a>');
});
},
error: function(){
alert("an error occurred");
}
});
这是php位:
$keyword = $_POST['keyword']??false;
if ($keyword){
// return keywords and urls
$results = find_matching_keywords($keyword);
return($results);
}
SQL查询有效。如果我在上面的PHP中将它作为foreach循环回显,然后在ajax成功中进行console.log记录,那么我可以看到数组的内容。
使用上面的ajax和php代码,我在控制台中收到一条错误消息:
Uncaught TypeError: data.forEach is not a function
但是我需要像上面的$ .ajax代码中那样将数据作为数组才能遍历它。