Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 04.03.2009, 22:01   #1
Димка
 
Регистрация: 23.11.2007
Сообщений: 3
Сообщение маска ввода через виртуальную клавиатуру

Народ подскажите как организовать маску ввода даты формата dd.mm.yyyy. ЧЕрез обычную клаву без проблем получается,а через виртуальную не получается определить вводимый символ, чтобы установить ограничение на ввод. клавиатура с сайта http://debugger.ru/projects/virtualkeyboard
ТАк же пробовал цеплять готовые скрипты через Jscript
<script type="text/javascript" src="js/tc/typecast.js"></script>
<script type="text/javascript" src="js/tc/typecast.config.js"></script> вот таким образом. ФИшка в том что на клавиатуре стоит событие onfocus="VirtualKeyboard.attachInpu t(this)" так же при вводе через маску работат событие OnKeyUp. И по этому приходится выбирать либо маска ввода, либо Вирт.клава.
Что с этим можно сделать?
В файле библиотеки корорые пробовал поцепить.
Вложения
Тип файла: zip tc.zip (8.9 Кб, 18 просмотров)

Последний раз редактировалось Димка; 04.03.2009 в 22:49.
Димка вне форума Ответить с цитированием
Старый 04.03.2009, 23:40   #2
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

А что, код такой массивный, что вы вложили его в файл? Многим просто лень его загружать и смотреть.
SkyM@n вне форума Ответить с цитированием
Старый 05.03.2009, 23:15   #3
Димка
 
Регистрация: 23.11.2007
Сообщений: 3
Вопрос Вопрос немного изменился

Цитата:
Сообщение от SkyM@n Посмотреть сообщение
А что, код такой массивный, что вы вложили его в файл? Многим просто лень его загружать и смотреть.
Это часть кода в файле typecast.js- который я поцепляю
Код:
  Var Typecast = {
   InitMask : false,
   InitSuggest : false,
   Init : function(){
      this.Parse(document.body.getElementsByTagName("input"));
      this.Behaviours.Mask.Init();
      this.Behaviours.Suggest.Init();
   },
   Parse : function(nodes){
      for(var i=0; i<nodes.length; i++){
         var node = nodes[i];
         if(node.type=="text" && node.className && node.className.indexOf("TC") != -1){
            if(!node.id) Typecast.Utils.GenerateID(node);
            var behaviourName = (node.className.indexOf("[") != -1) ? node.className.substring(node.className.indexOf("TC")+2, node.className.indexOf("[")) : node.className.substring(node.className.indexOf("TC")+2, node.className.length);
            Typecast["Init" + behaviourName] = true;
            Typecast.Behaviours[behaviourName].InitField(node);
            node.onfocus = Typecast.Behaviours[behaviourName].Run;
            node.onkeyup = Typecast.Behaviours[behaviourName].KeyHandler;
            node.onkeydown = Typecast.Behaviours[behaviourName].KeyHandler;
            node.onblur = Typecast.Behaviours[behaviourName].Stop;
            node.onmouseup = Typecast.Behaviours[behaviourName].MouseUp;
         }
      }
   },
   Behaviours : {
      Mask : {
         Init : function(){
         },
         InitField : function(field){
            var fieldData = [];
            if(!eval("Typecast.Config.Data.Mask.Masks." + field.id)){
               fieldData = field.className.substring(field.className.indexOf("[")+1, field.className.indexOf("]"))
            }else{
               fieldData = eval("Typecast.Config.Data.Mask.Masks." + field.id);
            }
            Typecast.Behaviours.Mask.ParseFieldData(field, fieldData);
            field.value = field.DefaultText.join("");
          },
         Run : function(e){
            e = (!e) ? window.event : e;
         },
         Stop : function(){
         },
А эта строчка в которой обрабатывается
Код HTML:
window.onload=function(){
Typecast.Init();
 return true;
 }
<td><input class="TCMask[##/##/####,mm.dd.yyyy] form-item" id="dbirth_id" name=dbirth value="" type="text" maxlength="10" onfocus="VirtualKeyboard.attachInput(this)"></td>
то есть суть вопроса немного поненялась. У меня не получается чтобы один фокус обрабатывал 2 события как маску ввода так и виртуальную клаву.

Последний раз редактировалось Димка; 06.03.2009 в 00:49.
Димка вне форума Ответить с цитированием
Старый 09.03.2009, 19:33   #4
Димка
 
Регистрация: 23.11.2007
Сообщений: 3
По умолчанию

Может у кого есть какие мысли по маске ввода???
Вообще любые мысли...
А то срочно нужно сделать и не получается
Димка вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в VirtualBox настроить виртуальную сеть Stilet Софт 5 22.10.2008 17:52
Хук на клавиатуру xshStasX Помощь студентам 1 09.08.2008 15:56
Хук (hook) на клавиатуру eoln Win Api 17 03.05.2008 17:35
com-программа, которая блокирует клавиатуру Белка Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 26.11.2007 14:37


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840