Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   innerHtml проблема (https://javascript.ru/forum/dom-window/36340-innerhtml-problema.html)

rampagetechn 12.03.2013 16:00

innerHtml проблема
 
Доброго времени суток.
Такая вот проблема:
Есть форма и кнопка.
В событии кнопки onclick="calc()" вызываю функцию написанную на javascript.
в конце функции результат должен выводиться в отдельный блок.
Вывожу вот так:
Код:

result.innerHTML = "<p>" + price + "</p>" + "\n" + desc;
Но при нажатии кнопки форма перегружает страницу html и результат который выводиться в блок сразу пропадает.
Как с этим моментом справиться ?

рони 12.03.2013 16:37

rampagetechn,
<form action="http://" onsubmit="return false">

rgl 12.03.2013 16:57

Ничего не должно перегружаться если у кнопки не тип submit
<html>

<head>
  <script type="text/javascript">
    function f() {
      document.getElementById("d1").innerHTML = "New text";
    }
  </script>
</head>

<body>
  <form action="http://javascript.ru">
    <input type="button" name="b1" value="go" onclick="f()">
  </form>

  <div id="d1">Old text</div>
</body>

</html>

rgl 12.03.2013 17:31

Забыл еще, если кнопа сделана тэгом button, то нужно явно учазывать тип, т.к. по умолчанию подразумевается submit
<button type="button" onclick="f()">go</button>

danik.js 12.03.2013 19:13

Ну и если форма - не форма, то и тег form не нужен в общем то.
Кстати форму можно засабмитить и без кнопки - по Enter в поле ввода например.


Часовой пояс GMT +3, время: 20:30.