访问服务器端的jQuery控件?

时间:2011-04-19 18:15:58

标签: javascript jquery controls server-side

是否有用于从服务器端调用jQuery / Javascript函数的库或框架?

例如,假设我在我的页面上使用了jQuery UI datepicker控件。日期选择器的格式(例如,MM / dd / yyyy)可以基于每个用户进行配置。在这种情况下,我必须在服务器上检索用户首选项,在隐藏控件中记录用户选择的格式,将HTML页面发送到客户端,最后从客户端的隐藏控件中提取格式。是否存在任何有助于这个冗长过程的库?

3 个答案:

答案 0 :(得分:1)

我喜欢将自定义属性用于此类事情。

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

在您根据用户设置呈现页面时呈现属性,然后客户端代码可以在需要时抓取它并适当地应用:

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

我有时会为此目的使用一个简单的基础结构,它可以将JSON + base64编码对象包含在通用“数据”属性中,然后在客户端展开它,以向控件添加更复杂的信息。

在其他情况下,我只是在使用通过ajax调用的服务从客户端获取设置时获取设置,但如果您已经知道在呈现页面时它是什么,这种方式会更有效。

答案 1 :(得分:0)

您需要使用某种服务器端脚本语言(如MySQL / PHP)来提取用户首选项,然后捆绑它不应该太难。您只需要使存储“动态”因为它接受各种日期格式,或转换为更标准化的格式。

在我知道您使用的语言或示例代码之前,我很难回答。

答案 2 :(得分:0)

取决于您的网站和网页的设置方式。但是,如果要将用户选择的日期选择器格式存储在cookie或会话变量中,则可以通过页面上的字符串属性(例如DatePickerFormat)公开此值,然后使jQuery datepicker dateFormat动态化为:

$(document).ready(function() {
  $('#idOfDataPickerControl').datepicker('option', 'dateFormat', '<%=DatePickerFormat%>');
});