У меня есть CFC, выполняющий запрос через AJAX, чтобы получить список информации / путей к изображениям для отображения на моей странице.В моей таблице есть логический столбец main
, чтобы указать, является ли изображение основным изображением и отображается ли оно над всеми другими изображениями.
Поскольку я обращаюсь к результатам запроса через AJAX, мне нужно создатьмассив данных перед возвратом на страницу, где моя функция javascript зацикливается на возвращаемых данных и создает теги <img>
.
Как я могу получить либо мой CFC, либо мой цикл javascript для распознавания main
логическое и переместить это изображение в первую позицию для отображения на моей странице?
Вот мой CFC:
<cfquery name="project_images">
select path, title, alt, main from tbl_images where pid = #projects.pid#;
</cfquery>
<cfloop query="project_images">
<cfset imgStruct = structNew()>
<cfset imgStruct["path"] = path>
<cfset imgStruct["alt"] = alt>
<cfset imgStruct["title"] = title>
<cfset imgStruct["main"] = main>
<cfset ArrayAppend(imgArray, imgStruct)>
</cfloop>
<cfset local.response["images"] = #imgArray#>
<cfreturn local.response>
И моя функция jQuery:
$('.project_class').click(function(e){
e.preventDefault();
var theclass = $(this).attr('id');
var cat = 'planning';
$.getJSON("../cfc/projects.cfc?returnFormat=json&method=getProjects",
{"theclass":theclass, "cat":cat},
function(response){
$('#portfolio_item').html(response.html);
var imageData = response.images;
$.each(imageData, function(i, item) {
$('#portfolio_item').append('<img src="..' + item.path + '" />');
});
});
});