diff --git a/templates/index.html b/templates/index.html
index 0687c9f..f776a65 100644
--- a/templates/index.html
+++ b/templates/index.html
@@ -410,19 +410,43 @@
html += '';
div.innerHTML = html;
- // 如果是用户消息且有搜索结果,在设置innerHTML后追加
+ // 如果是用户消息且有额外数据(搜索结果、图片、文件),在设置innerHTML后追加
if (role === 'user' && extraData) {
console.log('Processing extraData for user message:', extraData);
- console.log('search_results exists:', extraData.search_results);
+ const bodyDiv = div.querySelector('.message-body');
+
+ // 处理图片
+ if (extraData.images && extraData.images.length > 0) {
+ let imagesHtml = '
';
+ for (const img of extraData.images) {
+ // 历史记录只有图片元信息,显示占位符
+ imagesHtml += `
+
+ ${escapeHtml(img.name || '图片')}
+
`;
+ }
+ imagesHtml += '
';
+ if (bodyDiv) bodyDiv.insertAdjacentHTML('beforeend', imagesHtml);
+ }
+
+ // 处理文本文件
+ if (extraData.files && extraData.files.length > 0) {
+ let filesHtml = '';
+ for (const f of extraData.files) {
+ filesHtml += `
+
+ ${escapeHtml(f.name || '文件')}
+
`;
+ }
+ filesHtml += '
';
+ if (bodyDiv) bodyDiv.insertAdjacentHTML('beforeend', filesHtml);
+ }
+
+ // 处理搜索结果
if (extraData.search_results && extraData.search_results.length > 0) {
console.log('Building search results HTML for', extraData.search_results.length, 'results');
const searchHtml = buildSearchResultsHtml(extraData.search_results, extraData.search_query || content);
- const bodyDiv = div.querySelector('.message-body');
- console.log('bodyDiv found:', bodyDiv != null);
- if (bodyDiv) {
- bodyDiv.insertAdjacentHTML('beforeend', searchHtml);
- console.log('Search results HTML inserted');
- }
+ if (bodyDiv) bodyDiv.insertAdjacentHTML('beforeend', searchHtml);
}
}