Advertisement
Guest User

Kollokvium

a guest
May 24th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.38 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3. <head>
  4. <title>JavaScript kol</title>
  5. <meta http-equiv="Content-Script-Type" content="text/javascript"/>
  6. <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
  7. <script type="text/javascript">
  8. function $(string) {
  9. return document.querySelector(string);
  10. }
  11.  
  12. document.addEventListener("DOMContentLoaded",
  13. function (event) {
  14. document.getElementById("a").addEventListener("focus", function () {
  15. document.getElementById("a").style.borderColor = "blue";
  16. });
  17. document.getElementById("a").addEventListener("blur", function () {
  18. document.getElementById("a").style.borderColor = "gray";
  19. });
  20.  
  21. document.getElementById("b").addEventListener("focus", function () {
  22. document.getElementById("b").style.borderColor = "blue";
  23. });
  24. document.getElementById("b").addEventListener("blur", function () {
  25. document.getElementById("b").style.borderColor = "gray";
  26. });
  27. document.getElementById("op").addEventListener("focus", function () {
  28. document.getElementById("op").style.borderColor = "blue";
  29. });
  30. document.getElementById("op").addEventListener("blur", function () {
  31. document.getElementById("op").style.borderColor = "gray";
  32. });
  33.  
  34.  
  35. });
  36. var operators = {
  37. add: function (x, y) {
  38. return x + y;
  39. },
  40. mul: function (x, y) {
  41. return x * y;
  42. },
  43. };
  44.  
  45. function calculate() {
  46. var a = parseFloat(document.getElementById('a').value);
  47. var b = parseFloat(document.getElementById('b').value);
  48. var c = operators[$("#op").value];
  49. var d = Math.round(Math.sqrt(c(a, b)));
  50. console.log(d);
  51. if (d < 100) d = 100;
  52. var w = window.open(this.href, 'targetWindow', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
  53. w.resizeBy(d, d);
  54. w.document.write("Hello World!");
  55. }
  56.  
  57. function validateForm() {
  58. var inputs = document.querySelectorAll("input[type=text]");
  59. var flag = true;
  60. var m_flag = true;
  61. var err = "";
  62. var m_err = "";
  63.  
  64. for (var i = 0; i < inputs.length; i++) {
  65. m_err = "";
  66. m_flag = true;
  67. m_flag = m_flag && (inputs.item(i).value.trim() !== "");
  68. m_err = m_err + (inputs.item(i).value.trim() !== "" ? "" : "Empty ");
  69. if (m_flag) {
  70.  
  71. m_flag = m_flag && !isNaN(inputs.item(i).value);
  72. if (!m_flag) m_err = m_err + (isNaN(inputs.item(i).value) ? " is NaN, " : "");
  73. if (m_flag) {
  74. m_flag = m_flag && (parseFloat(inputs.item(i).value) >= 0);
  75. m_err = m_err + ((parseFloat(inputs.item(i).value) >= 0) ? "" : " is Negativ, ");
  76. if (m_flag) {
  77. m_flag = m_flag && (inputs.item(i).value.length >= 2) && (inputs.item(i).value.length <= 4);
  78. if (!m_flag) {
  79.  
  80. m_err += m_err + ((inputs.item(i).value.length >= 2) && (inputs.item(i).value.length <= 4) ? "" : "Not in range, ");
  81. }
  82. }
  83. }
  84. }
  85. if (!m_flag) {
  86. inputs.item(i).style.backgroundColor = "red";
  87. }
  88. else inputs.item(i).style.backgroundColor = "lightgreen";
  89. flag = flag && m_flag;
  90. err = err + " " + inputs.item(i).name + " " + (flag ? "Okay!" : m_err) + "\n";
  91. }
  92.  
  93.  
  94. m_flag = (document.getElementById("op").value !== "choose");
  95. if (!m_flag) {
  96. document.getElementById("op").style.borderColor = "#F00";
  97. err = err + "Not choosen!\n"
  98. }
  99. else document.getElementById("op").style.borderColor = "#0F0";
  100. flag = flag && m_flag;
  101. if (!flag) alert(err);
  102. else
  103. calculate();
  104. return false;
  105. }
  106. </script>
  107. </head>
  108. <body>
  109. <form method="post" action="a.php" onsubmit="return validateForm();">
  110. <fieldset>
  111. <legend><b><i>Fill in the form</i></b></legend>
  112. <br/>
  113. <label>First operand (integer number with 2, 3 or 4 digits): </label>
  114. <input type="text" id="a" name="a"/> *
  115. <br/><br/>
  116. <label>Second operand (integer number with 2, 3 or 4 digits): </label>
  117. <input type="text" id="b" name="b"/> *
  118. <br/><br/>
  119. <label>Operator: </label>
  120. <select name="op" id="op">
  121. <option value="choose">choose</option>
  122. <option value="add">+</option>
  123. <option value="mul">*</option>
  124. </select> *
  125. <br/><br/>
  126. <input type="submit" name="sb" value="Send"/>
  127. <input type="reset" name="rb" value="Cancel"/>
  128. </fieldset>
  129. </form>
  130.  
  131. </body>
  132. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement