form.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  4. <title>work/out form</title>
  5. <!-- libs, do not modify. When local than load local libs. -->
  6. <script type="text/javascript" src="/js_libs/jquery.min.js"></script>
  7. <script type="text/javascript" src="/js_libs/jquery.browser.js"></script>
  8. <script type="text/javascript" src="/js_libs/jquery.svg.min.js"></script>
  9. <script type="text/javascript" src="/js_libs/jquery.svgdom.min.js"></script>
  10. <script type="text/javascript" src="/js_libs/vkbeautify.js"></script>
  11. <script type="text/javascript" src="/js_libs/util.js"></script>
  12. <script type="text/javascript" src="/js_libs/printf.js"></script>
  13. <script type="text/javascript" src="/js_libs/strftime.min.js"></script>
  14. <script type="text/javascript" src="/js_libs/parsequery.js"></script>
  15. <script type="text/javascript" src="/js_libs/underscore.min.js"></script>
  16. <script type="text/javascript" src="/js_libs/jquery.caret.min.js"></script>
  17. <script type="text/javascript" src="/js_libs/jquery.cookie.js"></script>
  18. <link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
  19. <link rel="stylesheet" href="/js_libs/ui.css" type="text/css"/>
  20. <link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
  21. <!-- custom stuff, play arround -->
  22. <script src='../js/form-render.min.js'></script>
  23. <script>
  24. if (location.href.match(/\/$/) == null) {
  25. //location.href = location.href + '/';
  26. }
  27. </script>
  28. </head>
  29. <body>
  30. <form id="fb-render">
  31. <script>
  32. function openlink(menuitem){
  33. var menu = { name: menuitem };
  34. $.ajax({
  35. type: "PUT",
  36. url: window.name,
  37. contentType: "application/json",
  38. data: JSON.stringify(menu),
  39. success: function (data) {
  40. }
  41. });
  42. }
  43. var formRenderInstance;
  44. //https://stackoverflow.com/questions/1184624/convert-form-data-to-javascript-object-with-jquery
  45. function objectifyForm(formArray) {
  46. //serialize data function
  47. var returnArray = {};
  48. for (var i = 0; i < formArray.length; i++){
  49. returnArray[formArray[i]['name']] = formArray[i]['value'];
  50. }
  51. return returnArray;
  52. }
  53. //return json data that should be sent when frames button is pressed
  54. function buttonPressed(){
  55. //does not allow for multi select boxes
  56. //getting formdata: https://gomakethings.com/serializing-form-data-with-the-vanilla-js-formdata-object/ */
  57. //var myForm = document.getElementById('fb-render');
  58. //return Object.fromEntries(new FormData(myForm));
  59. objectifyForm($("#fb-render").serializeArray())
  60. return objectifyForm($("#fb-render").serializeArray());
  61. //return formRenderInstance.userData;
  62. }
  63. jQuery(function($) {
  64. $.ajax({
  65. type: "GET",
  66. url: "./json",
  67. dataType: "json",
  68. success: function(json) {
  69. formRenderInstance = $('#fb-render').formRender({
  70. formData: json,
  71. });
  72. //necesarry as input fields do not have unique names resulting in overriding when the data is serialized
  73. $("#fb-render input[type=checkbox]").each(function(){
  74. this.name = this.value
  75. this.value = "true"
  76. });
  77. },
  78. error: function (request, status, error) {
  79. }
  80. });
  81. });
  82. </script>
  83. </body>
  84. </html>