Communication.html 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <!DOCTYPE html>
  2. <html lang="zh">
  3. <head>
  4. <link rel="stylesheet" type="text/css" href="Communication.css">
  5. <meta charset="UTF-8">
  6. <title>Hello</title>
  7. <script src="gui.js"></script>
  8. <script src="requests.js"></script>
  9. </head>
  10. <body>
  11. <script>
  12. let host = 'http://127.0.0.1:5000/'
  13. </script>
  14. <canvas id="canvas" class="bg_canvas"></canvas>
  15. <div class="screen" id="screen">
  16. <div class="nothing"></div>
  17. <div class="form" id="form">
  18. <div>
  19. <label for="sentfunc" class="font" id="sentfunc_labe">选定发送方式:</label>
  20. <select id="sentfunc" class="font">
  21. <option value="done ">执行python</option>
  22. <option value="get_var ">获取变量</option>
  23. <option value="get var_* ">获取所有变量</option>
  24. <option value="get * ">获取通信变量</option>
  25. <option value="get_eval ">返回代码</option>
  26. <option value="put_var ">发送变量</option>
  27. <option value="put_eval ">发送代码</option>
  28. <option value="file ">发送文件</option>
  29. </select>
  30. <input type="file" id="get_file" style="display:none;"/>
  31. <label for="message" class="font">输入发送对象:</label>
  32. <input id="message" class="font text" type="text">
  33. <button class="font button" onclick="sent()">发送消息</button>
  34. <button class="font button" onclick="document.getElementById('get_file').click()">选择文件</button>
  35. <script>
  36. let the_file = document.getElementById("get_file");
  37. the_file.addEventListener("change",function () {
  38. let message_input = document.getElementById("message");
  39. message_input.value = message_input.value + the_file.value;
  40. });
  41. </script>
  42. </div>
  43. <div class="nothing"></div>
  44. <div>
  45. <label for="queue_list"></label>
  46. <select id="queue_list" class="font box" size=30>
  47. </select>
  48. <label for="var_list"></label>
  49. <select id="var_list" class="font box" size=30>
  50. </select>
  51. </div>
  52. </div>
  53. </div>
  54. <script>
  55. function sent() {
  56. let sent_box = document.getElementById("sentfunc");
  57. let queue_list = document.getElementById("queue_list");
  58. let index = String(queue_list.options[queue_list.selectedIndex].value);
  59. let message = sent_box.options[sent_box.selectedIndex].value + document.getElementById("message").value;
  60. let sent_func = function () {}; // Nothing
  61. request_get(sent_func, "sent?message=" + message + '&index=' + index);
  62. }
  63. function get_update(is_must) {
  64. update_func = function () {
  65. if (xhr.status === 200) {
  66. let json = JSON.parse(xhr.responseText);
  67. if (json['status'] === 'YES') {
  68. let p_box = document.getElementById("queue_list");
  69. let var_box = document.getElementById("var_list");
  70. update_box(p_box, json['queue']);
  71. update_box(var_box, json['var']);
  72. p_box.innerHTML = '';
  73. }
  74. }
  75. };
  76. request_get(update_func, "update" + '?must=' + is_must);
  77. }
  78. get_update('must'); // 第一次通信,必须获取
  79. window.setInterval("get_update('No')", 1000);
  80. </script>
  81. <script src="bg.js"></script>
  82. </body>
  83. </html>