Доступ к элементам управления jQuery на стороне сервера? - PullRequest
3 голосов
/ 19 апреля 2011

Есть ли библиотека или фреймворк, созданный для вызова функций jQuery / Javascript со стороны сервера?

Например, допустим, что на моей странице используется элемент управления датой выбора jQuery UI.Формат указателя даты (например, MM / dd / yyyy) настраивается для каждого пользователя.В этом сценарии мне придется получить пользовательские настройки на сервере, записать выбранный пользователем формат в скрытом элементе управления, отправить HTML-страницу клиенту и, наконец, извлечь этот формат из скрытого элемента управления на стороне клиента.Существует ли какая-либо библиотека, которая облегчает этот затянувшийся процесс?

Ответы [ 3 ]

1 голос
/ 19 апреля 2011

Мне нравится использовать пользовательские атрибуты для такого рода вещей.

<asp:TextBox runat="server" id="myDatePicker" ClientIDMode="Static" 
  format="MM/dd/yyyy" />

Визуализировать атрибут, когда вы визуализируете страницу, основываясь на пользовательских настройках, тогда клиентский код может просто получить его, когда это необходимо, ипри необходимости примените:

var format = $('#myDatePicker').attr('format');

Иногда я использую для этой цели простую инфраструктуру, которая может кодировать объекты JSON + base64 для включения в общее свойство «data», а затем раскручивать его на клиенте, чтобы добавить более сложныйинформация для элемента управления.

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

0 голосов
/ 19 апреля 2011

Зависит от того, как настроены ваш сайт и страница. Но если вы сохраняете выбранный пользователем формат выбора даты в файле cookie или в переменной сеанса, вы можете выставить это значение через строковое свойство на странице (например, DatePickerFormat), а затем сделать динамический jFuery datepicker dateFormat примерно так:

$(document).ready(function() {
  $('#idOfDataPickerControl').datepicker('option', 'dateFormat', '<%=DatePickerFormat%>');
});
0 голосов
/ 19 апреля 2011

Вам нужно было бы включить какой-нибудь язык сценариев на стороне сервера, такой как MySQL / PHP, чтобы получить пользовательские настройки, тогда его не должно быть слишком сложно объединить. Вам просто нужно сделать хранилище "динамичным"в том смысле, что он принимает широкий диапазон форматов дат или преобразует их в более стандартизированный формат.

Пока я не знаю, какие языки вы используете, или какой-нибудь пример кода, мне сложно ответить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...