simple_backtest.html 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <style>
  2. @media (max-width: 768px) {
  3. .table td, .table th {
  4. padding: .5rem; /* 减小填充 */
  5. font-size: .875rem; /* 减小字体大小 */
  6. }
  7. }
  8. .table {
  9. width: 100%;
  10. max-width: 100%;
  11. margin-bottom: 1rem;
  12. }
  13. .table th, .table td {
  14. word-wrap: break-word; /* 允许单词内换行 */
  15. }
  16. </style>
  17. {% extends "base_index.html" %}
  18. {% block content %}
  19. <div class="container-fluid mt-2">
  20. <h1 class="text-center mb-4">上传CSV文件</h1>
  21. <div class="row justify-content-center">
  22. <div class="col-md-6">
  23. <form action="/simple_backtest" method="post" enctype="multipart/form-data" class="mb-3">
  24. <div class="input-group mb-3">
  25. <div class="custom-file">
  26. <input type="file" class="custom-file-input" name="file" id="fileInput"
  27. onchange="updateLabel()">
  28. <label class="custom-file-label" for="fileInput">选择文件</label>
  29. </div>
  30. <div class="input-group-append">
  31. <button class="btn btn-outline-secondary" type="submit">上传</button>
  32. </div>
  33. </div>
  34. </form>
  35. </div>
  36. </div>
  37. <!-- 增大表格展示 -->
  38. {% if tables %}
  39. <h3 class="text-center" style="margin-bottom: 3vh">{{ file_name }}分析结果</h3>
  40. <div class="d-table mx-auto">
  41. {% for table in tables %}
  42. <table class="table text-center">
  43. {{ table|safe }}
  44. </table>
  45. {% endfor %}
  46. </div>
  47. {% endif %}
  48. </div>
  49. <script>
  50. // 当文件选择变化时,保存文件名到本地存储
  51. function updateLabel() {
  52. var input = document.getElementById('fileInput');
  53. if (input.files.length > 0) { // 确保选择了文件
  54. var label = input.nextElementSibling;
  55. var fileName = input.files[0].name;
  56. label.innerHTML = fileName;
  57. localStorage.setItem('lastUploadedFileName', fileName); // 保存文件名到本地存储
  58. } else {
  59. localStorage.removeItem('lastUploadedFileName'); // 如果没有文件被选择,清除存储的文件名
  60. }
  61. }
  62. // 页面加载完成后,检查是否有保存的文件名
  63. document.addEventListener('DOMContentLoaded', function () {
  64. var input = document.getElementById('fileInput');
  65. var label = document.querySelector('.custom-file-label');
  66. if (input.files.length > 0) { // 如果实际上有文件被选中
  67. var fileName = input.files[0].name;
  68. label.innerHTML = fileName;
  69. } else {
  70. label.innerHTML = '选择文件'; // 如果没有文件,显示默认文本
  71. localStorage.removeItem('lastUploadedFileName'); // 清除本地存储中的文件名
  72. }
  73. });
  74. </script>
  75. {% endblock %}