2015-06-26 4 views
0

Я пытаюсь отформатировать поле ввода типа xs: date в Orbeon. Я пробовал использовать атрибут xxf: format, но datepicker не может понять дату, когда он был изменен.Форматирование Orbeon Поле ввода даты

Идея теперь состояла в том, чтобы изменить javascript Orbeon, чтобы использовать атрибут xxf: unformat, чтобы интерпретировать дату и преобразовать ее обратно в формат ISO. Я попытался изменить data.js, но по какой-то причине ничего не видно.

Я меняю неправильный файл?

Редактировать

Я понял, что xforms.js имеет функцию «GetCurrentValue», которая в настоящее время, как изменения, которые я делаю там видно. Теперь мне просто нужно выяснить, кто тот, кто вызывает функцию.

Edit:

Это календарь, который запрашивает значение сигнала на входе, когда пользователь нажимает на символ. Все это происходит на стороне клиента, а сгенерированный HTML не имеет атрибутов format/unformat. Однако я хочу использовать их ценность. Могу ли я сделать запрос в Орбеон, чтобы получить его? Как?

ответ

1

В случае, если вы используете xf:input, связанный с узлом типа xs:date, вы можете control the formatting of the date field с oxf.xforms.format.input.date собственности. Поддерживается несколько форматов, и если вы хотите добавить больше, лучше всего будет следовать шаблону, используемому в настоящее время для поддерживаемых в настоящее время форматов.

E.g.

[M]/[D]/[Y] 
[Y]-[M01]-[D01] 
+0

Я также читал об этом варианте. Но я не уверен, что это соответствует моим потребностям. Нам нужно иметь очень гибкое форматирование. Мы фактически генерируем XForm из некоторого ввода. Мы также должны иметь разные формы для разных входных данных. – cvesters

+0

@cvesters Если это не соответствует вашим потребностям в том смысле, что оно не поддерживает форматы, которые вы хотите, возможно, вы можете его расширить. (И если то, что вы делаете, может быть полезным для других, вы можете даже внести свои изменения в продукт.) Сервер и клиент всегда меняют даты в формате ISO (например, «2015-06-28»), поэтому для поддержки новый формат, вы захотите добавить оба кода на стороне клиента и на стороне сервера. – avernet

+0

Я думаю, что это немного, где проблема. Я не знаю точного потока данных. Какие файлы мне нужно изменить? Я сделал что-то подобное для чисел, просто используя xxf: format и xxf: unformat. Но для даты это невозможно, так как выбор даты не распознает формат. – cvesters

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