тестирование сайтов Guest • Вход

Как узнать порядок и время выбора элементов HTML-формы?

Применение данной функции позволяет определить очередность выбора пунктов HTML-формы и время, затраченное на их заполнение.

Javascript-код:

  1. <script type="text/javascript">/*<![CDATA[*/
  2. /** 
  3.  * Учет действий пользователя при заполнении HTML-формы
  4.  * © 2004 Шильников Дмитрий <dev at wwwguru dot net>
  5.  */
  6. /* строка для отчета */
  7. var g_clicktimes = "";
  8. /* количество кликов */
  9. var int_clicks = 0;
  10. /* Узнаёт время */
  11. function my_get_time() {
  12.   var today = new Date();
  13.   /* для последующей обработки скрипта на сервере
  14.      достаточно результатов функции getTime()
  15.      return today.getTime(); */
  16.   var str = today.getHours();
  17.   str += ":" + today.getMinutes();
  18.   str += ":" + today.getSeconds();
  19.   return str;
  20. }
  21. /* Формирует строку для отчета */
  22. function my_save_times(n) {
  23.   int_clicks++;
  24.   /* отмечено или не отмечено */
  25.   var str_checked = document.forms['qa'].elements[n].checked 
  26.         ? 'check' 
  27.         : 'uncheck';
  28.   g_clicktimes += int_clicks + " - ";
  29.   g_clicktimes += n + " - ";
  30.   g_clicktimes += str_checked + " - ";
  31.   g_clicktimes += my_get_time() + "\n";
  32. }
  33. /* Выводит отчет на экран */
  34. function my_show_times() {
  35.   document.forms['qa'].clicktimes.value = g_clicktimes;
  36.   window.alert( document.forms['qa'].clicktimes.value );
  37. }
  38. /*]]>*/</script>

HTML-код:

  1. <p>Выберите планируемые разделы сайта:</p>
  2. <form name="qa" action="" method="post">
  3.   <input onchange="my_save_times('qa[1]')" 
  4.     type="checkbox" value="1" name="qa[1]" id="qa_1"/>
  5.   <label for="qa_1">О фирме</label>
  6.   <br />
  7.   <input onchange="my_save_times('qa[2]')" 
  8.     type="checkbox" value="1" name="qa[2]" id="qa_2"/>
  9.   <label for="qa_2">Новости фирмы</label>
  10.   <br />
  11.   <input onchange="my_save_times('qa[3]')" 
  12.     type="checkbox" value="1" name="qa[3]" id="qa_3"/>
  13.   <label for="qa_3">Каталог товаров с описанием</label>
  14.   <br />
  15.   <input onchange="my_save_times('qa[4]')" 
  16.     type="checkbox" value="1" name="qa[4]" id="qa_4"/>
  17.   <label for="qa_4">Прайс-лист</label>
  18.   <br />
  19.   <input onchange="my_save_times('qa[5]')" 
  20.     type="checkbox" value="1" name="qa[5]" id="qa_5"/>
  21.   <label for="qa_5">Контактная информация</label>
  22.   <br />
  23.   <input type="hidden" name="clicktimes" value="" />
  24.   <input type="submit" 
  25.     onclick="my_show_times();return false" 
  26.     value="Отправить" />
  27. </form>

Обновлено: 15 Марта 2009 г. пользователем Dmitry Sh, Создано: 23 Апреля 2004 г.