0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 22
1

JavaScript. подскажите с комментариями

22.12.2015, 18:12. Показов 653. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Есть задание:
Создайте скрипт для вычисления расстояния между населенными пунктами, изображенными на карте. Расстояние между населенными пунктами (в см) вводится пользователем в однострочное поле ввода текста, масштаб карты (количество км в одном см) выбирается из списка значений (1, 5, 10, 100, 500), организованного в виде выпадающего меню. Ответ (расстояние между населенными пунктами в км) должен выводиться в текстовом поле Расстояние в км при выборе пункта меню с соответствующим масштабом карты. Реализуйте проверку корректности ввода данных, в случае ошибки. Представьте пользователю возможность сброса (очистки) заданных параметров.
ЗАДАНИЕ: НАДО СДЕЛАТЬ ПРОВЕРКУ НА ПУСТОЕ ПОЛЕ,И НЕОТРИЦАТЕЛЬНОСТЬ ЧИСЕЛ В ПОЛЕ "РАССТОЯНИЕ В САНТИМЕТРАХ".
Делала разными способами, не получается, проверка не срабатывает.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 <head>
  <title>зачёт</title>
 </head>
 <body>
<form name="scaleFactor">
    <legend>Вычисление расстояния мужду населенными пунктами</legend>
    <p>
      <label>Расстояние в сантиметрах:
        <input type="text" name="cm" />
 
      </label>
    </p>
    <p>
      <label>Расстояние в километрах:
        <input type="text" name="km" />
      </label>
    </p>
    <p>
    <label>Масштаб:
      <select name="scale" id="scale" >
        <option value="1" selected>1</option>
        <option value="5">5</option>
        <option value="10">10</option>
        <option value="100">100</option>
        <option value="500">500</option>
      </select>
      <script type = "text/javascript" language="javascript">
var form = document.forms.scaleFactor;
 form.scale.onchange = function(event) {
    form.km.value = this.value * form.cm.value;
};
  </script>
 
    </label>
    </p>
    <p>
   <input type="reset" value="Сброс"/>
  </p>
</form>
 </body>
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.12.2015, 18:12
Ответы с готовыми решениями:

Не могли бы объяснить данные скрипты (javascript) желательно с комментариями
&lt;script type=&quot;text/javascript&quot;&gt; function GetValFromText(item_id) {...

Подскажите тилературу по JavaScript
подскажите какую литературу почитать или вообще камк лучше понять &quot;выучить &quot; JavaScript? нахажусь...

Подскажите хорошую книжку по JavaScript
Всем привет, подскажите хорошие книжки, статьи, сайты по изучению JavaScript)

Подскажите, пожалуйста, книгу по JavaScript
Народ, начал не так давно учить веб программирование и выучил пока только HTML/CSS. Планирую дальше...

6
152 / 151 / 67
Регистрация: 25.02.2015
Сообщений: 493
22.12.2015, 22:41 2
Если мне память не изменяет событие onchange есть не у формы а у ее элементов. Соответственно обработчик надо вешать на элементы формы. Хотя может я и ошибаюсь. В любом случае в этих 2 статьях есть вся информация по данному вопросу https://learn.javascript.ru/form-elements https://learn.javascript.ru/events-change
0
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
22.12.2015, 22:54 3
natashasharova, я ж описал всю твою задачу, а теперь всего-то нужно вставить условие с проверкой на '' и <0

Добавлено через 3 минуты
Цитата Сообщение от Karssen Посмотреть сообщение
Если мне память не изменяет событие onchange есть не у формы а у ее элементов
Событию пофиг какие узлы, оно просто идет от корня документа до элемента на котором произошло событие, а по пути вызывает обработчики этого события для каждого текущего элемента.
0
152 / 151 / 67
Регистрация: 25.02.2015
Сообщений: 493
22.12.2015, 23:15 4
Padimanskas, да, моя ошибка. Проверил и правда отлавливает
0
BANO
22.12.2015, 23:33
  #5

Не по теме:

Цитата Сообщение от Padimanskas Посмотреть сообщение
корня документа до элемента
а потом оно идёт обратно к корню, и создаётся наследование эвентов парентами от чилдов
ну вы меня поняли

0
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
23.12.2015, 01:09 6
Цитата Сообщение от BANO Посмотреть сообщение
а потом оно идёт обратно к корню, и создаётся наследование эвентов парентами от чилдов
DOM создается сразу после загрузки и парсинга разметки и все данные распихиваются по углам в forms, links, images, body, атрибуты и т.п. далее вызывается DOMContentLoaded и load когда вся медиа окончательно подгрузится.
А Ивентс идет от корня документа к целевому элементу(кепчр стейт, таргет), потом обратно(баблинг стейт). На кепчеринг можно не откликаться(в свойствах onEvent он вообще по умолчанию не работает) и обычно так и делают в addEventListener третий параметр в false. Для отмены баблинга делают stopPropagation, то есть делегирование не доедет до корня документа. Так же есть эмиди который останавливает все делегирования тут же(и кепчр и бабл). Все это описано в дом левел 3 http://www.w3.org/TR/DOM-Level... event-flow и в МДН тоже есть https://developer.mozilla.org/... eventPhase. А на счет наследования там ничего не сказано, может просто терминология разная. В смысле имеешь в виду делегирование это "наследование ивентс"
0
Ренегат
Эксперт HTML/CSS
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
23.12.2015, 16:23 7
Padimanskas, понимаешь(надеюсь могу на ты)
я имел в виду, что если поставить onclick на форму, то сначала сработает онклик на кнопку, которая находится внутри формы, а потом уже и онклик формы, это если ловить пузырьковые эвенты, как ты и говорил третий парамтр фолсовый
а если кепчером, то сначала сработает форма, а потом кнопка, это если true

ну собственно ты правильно заметил, просто у нас разная терминология
как и произношние английских слов. я знаю что ивент, просто привык писать эвент)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.12.2015, 16:23
Помогаю со студенческими работами здесь

Подскажите пожалуйста задачник по javascript'у
Ребят подскажите пожалуйста задачник по javascript'у. Попрактиковаться нужно, а в голову ничего не...

Подскажите код теста на javascript
Подскажите код этого теста. Просто на примере этого теста хочу создать свой.

Подскажите как сделать тест на JavaScript!?
Тест типа игры &quot;Кто хочет стать миллионером&quot;? но мне сам принцип нужен, как это все реализовать и...

тест на javascript. подскажите где ошибка
Добрового времени суток. По учебе нужно стало написать тест на javascript...вроде написал, но,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru