2015-08-13 2 views
1

Я использую библиотеку webshims, чтобы лучше поддерживать более старые браузеры с более современными функциями. Хотя сборщик данных отлично работает с мышью, у меня, похоже, возникают проблемы с его использованием с клавиатуры. Самый простой способ увидеть это - посетить demo page. Я использую Firefox, так как он не поддерживает дату.Ввод клавиатуры с помощью подборщика данных Webshim

Не вносите никаких изменений, попробуйте ввести дату. Я могу вводить числа, но я не могу ввести «/». Если вы включите заполнитель, он даже предложит косую черту. Я попытался оставить разделитель или использовать «-» (который он позволяет мне вводить), но когда форма отправляется, я не получаю никакой ценности.

Как вы можете ввести дату с клавиатуры?

Для бонусных очков можно разрешить сборщику даты не применять формат? У меня есть код backend, который может анализировать различные форматы дат. Поэтому они могут использовать сборщик дат, если хотят, но если они что-то набирают, то все, что они набирают, отправляется на сервер без изменений.

ответ

2

Попробуйте this.This работы для формата «/» ..

$.webshims.formcfg = { 
     en: { 
     dFormat: '/', 
     dateSigns: '/', 
     patterns: { 
      d: "mm/dd/yy" 
     } 
     } 

    }; 
    webshims.activeLang('en'); 
1

Похоже, что существует проблема с настройками локали. Из того, что я могу сказать, есть атрибут конфигурации формы, называемый dateSigns, который устанавливается в настройках локали.

Решение для меня состояло в том, чтобы перейти к файлу shims/combos/5.js и найти кусок кода с dateSigns. Я нашел релевантный для американского английского вокруг линии 1750, которая выглядит следующим образом:

if(!formcfg['en-US']){ 
     formcfg['en-US'] = $.extend(true, {}, formcfg.en, { 
      date: {firstDay: 0}, 
      patterns: {d: "mm/dd/yy"}, 
      dateSigns: '-', 
      dFormat: "/", 
      meridian: ['AM', 'PM'] 

     }); 
    } 

Я обновил dateSigns линию

dateSigns: '/', 

Это ужасный хак, и должен быть способ установите это как конфигурацию или, по крайней мере, получите реальные настройки языка, чтобы справиться с этим. Но мне не удалось в ограниченное время, которое у меня есть. Но, возможно, это поможет вам. Меня устраивает.

+0

Это не выглядит как ужасный хак для меня! Посмотрите на шаблон, он показывает слэши, но dateSign - тире. Похоже, вы исправили ошибку. Рассмотрите отправку запроса на вытягивание и укажите эту проблему: https://github.com/aFarkas/webshim/issues/542 – MushinNoShin

+0

@MushinNoShin Я согласен ... Я рассмотрел запрос на перенос, но не думаю, что мое исправление завершено (кажется, появляются другие места, которые не имеют эффекта, когда я их изменяю). Поскольку мне не нравится сложная структура проекта webshim, я собираюсь пройти и предоставить эксперту указать мне в правильном направлении или забрать его и исправить. – Phil

Смежные вопросы