文件上传页面功能基本集成完成
This commit is contained in:
@@ -749,19 +749,19 @@
|
||||
};
|
||||
|
||||
if (!data.name) {
|
||||
alert('请输入任务名称');
|
||||
showMessage('提示', '请输入任务名称', 'warning');
|
||||
return;
|
||||
}
|
||||
if (!data.base_model) {
|
||||
alert('请选择基础模型');
|
||||
showMessage('提示', '请选择基础模型', 'warning');
|
||||
return;
|
||||
}
|
||||
if (!data.train_dataset_id) {
|
||||
alert('请选择训练集');
|
||||
showMessage('提示', '请选择训练集', 'warning');
|
||||
return;
|
||||
}
|
||||
if (validSplit === 'custom' && !data.valid_dataset_id) {
|
||||
alert('请选择验证集');
|
||||
showMessage('提示', '请选择验证集', 'warning');
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -773,15 +773,88 @@
|
||||
});
|
||||
const result = await response.json();
|
||||
if (result.code === 0) {
|
||||
alert('创建成功!');
|
||||
window.location.href = 'main.html';
|
||||
showMessage('成功', '创建成功!', 'success', () => {
|
||||
window.location.href = 'main.html';
|
||||
});
|
||||
} else {
|
||||
alert(result.message || '创建失败');
|
||||
showMessage('错误', result.message || '创建失败', 'error');
|
||||
}
|
||||
} catch (error) {
|
||||
alert('创建失败: ' + error.message);
|
||||
showMessage('错误', '创建失败: ' + error.message, 'error');
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- 自定义消息弹窗 -->
|
||||
<div id="customModal" class="hidden fixed inset-0 bg-black/50 z-50 flex items-center justify-center" onclick="if(event.target === this) closeModal();">
|
||||
<div class="bg-white rounded-xl shadow-xl max-w-sm w-full mx-4 overflow-hidden transform transition-all">
|
||||
<div class="flex flex-col items-center justify-center min-h-[160px] py-6">
|
||||
<div id="modalIcon"></div>
|
||||
<h3 id="modalTitle" class="text-base font-medium text-gray-800 mb-2"></h3>
|
||||
<p id="modalMessage" class="text-gray-600 text-sm"></p>
|
||||
</div>
|
||||
<div id="modalBtnGroup" class="hidden px-6 pb-6 flex flex-col space-y-2 mx-4">
|
||||
<button id="modalConfirmBtn" class="px-4 py-2 w-full text-white rounded transition-colors text-sm">确定</button>
|
||||
<button id="modalCancelBtn" class="px-4 py-2 w-full border border-gray-300 text-gray-700 rounded hover:bg-gray-50 transition-colors text-sm">取消</button>
|
||||
</div>
|
||||
<div id="modalSingleBtnGroup" class="px-6 pb-6 flex justify-center">
|
||||
<button id="modalConfirmBtn2" class="px-6 py-2 w-full text-white rounded transition-colors text-sm max-w-[160px]">确定</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
// 显示消息弹窗
|
||||
function showMessage(title, message, type = 'info', onConfirm) {
|
||||
const modal = document.getElementById('customModal');
|
||||
const modalTitle = document.getElementById('modalTitle');
|
||||
const modalMessage = document.getElementById('modalMessage');
|
||||
const modalIcon = document.getElementById('modalIcon');
|
||||
const modalConfirmBtn = document.getElementById('modalConfirmBtn');
|
||||
const modalConfirmBtn2 = document.getElementById('modalConfirmBtn2');
|
||||
const modalBtnGroup = document.getElementById('modalBtnGroup');
|
||||
const modalSingleBtnGroup = document.getElementById('modalSingleBtnGroup');
|
||||
|
||||
modalTitle.textContent = title;
|
||||
modalTitle.className = 'text-lg font-medium text-gray-800 mb-2';
|
||||
|
||||
if (type === 'success') {
|
||||
modalIcon.innerHTML = '<div class="w-12 h-12 mx-auto mb-4 rounded-full bg-green-100 flex items-center justify-center"><i class="fa fa-check text-xl text-green-600"></i></div>';
|
||||
} else if (type === 'error') {
|
||||
modalIcon.innerHTML = '<div class="w-12 h-12 mx-auto mb-4 rounded-full bg-red-100 flex items-center justify-center"><i class="fa fa-times text-xl text-red-600"></i></div>';
|
||||
} else if (type === 'warning') {
|
||||
modalIcon.innerHTML = '<div class="w-12 h-12 mx-auto mb-4 rounded-full bg-yellow-100 flex items-center justify-center"><i class="fa fa-exclamation text-xl text-yellow-600"></i></div>';
|
||||
} else {
|
||||
modalIcon.innerHTML = '<div class="w-12 h-12 mx-auto mb-4 rounded-full bg-blue-100 flex items-center justify-center"><i class="fa fa-info text-xl text-blue-600"></i></div>';
|
||||
}
|
||||
|
||||
modalMessage.innerHTML = message;
|
||||
|
||||
modalBtnGroup.classList.add('hidden');
|
||||
modalSingleBtnGroup.classList.remove('hidden');
|
||||
const confirmBtn = modalConfirmBtn2;
|
||||
confirmBtn.className = 'px-6 py-2 w-full text-white rounded transition-colors text-sm max-w-[160px]';
|
||||
if (type === 'success') {
|
||||
confirmBtn.classList.add('bg-primary');
|
||||
} else if (type === 'error') {
|
||||
confirmBtn.classList.add('bg-red-500');
|
||||
} else if (type === 'warning') {
|
||||
confirmBtn.classList.add('bg-yellow-500');
|
||||
} else {
|
||||
confirmBtn.classList.add('bg-primary');
|
||||
}
|
||||
confirmBtn.onclick = () => {
|
||||
closeModal();
|
||||
if (onConfirm) onConfirm();
|
||||
};
|
||||
|
||||
modal.classList.remove('hidden');
|
||||
}
|
||||
|
||||
function closeModal() {
|
||||
const modal = document.getElementById('customModal');
|
||||
modal.classList.add('hidden');
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user