Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 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
По умолчанию

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


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


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