jquery,是否可以将信息存储在变量而不是输入字段中?

时间:2010-10-02 04:20:07

标签: jquery

我想将当前页码存储在jquery变量中,但我不确定它是否可行,所以我将它存储在输入字段中。我这样做是最有效的方式吗?

<input type='hidden' id='current_page' /> 

$('#current_page').val(0);  

如果页面被更改,

function (newpage){
$('#current_page').val(page_num);
}

3 个答案:

答案 0 :(得分:1)

使用JQuery,您可以将数据存储在任何DOM元素中,输入与否

$('#current_page').data('page', 0); // save value
$('#current_page').data('page'); // return value

http://api.jquery.com/data/

正如我所说,你不必为此添加特殊的html元素,任何一个现有的都可以使用。

答案 1 :(得分:1)

你可以使用jQuery.data() - 就像尼基塔所提到的那样。

但是如果您也想支持禁用JavaScript的客户端,那么我会坚持使用隐藏的输入元素。这样,您仍然可以从服务器端控制分页。然后,隐藏的输入值可用于通知服务器端客户端当前所在的页面。

答案 2 :(得分:0)

其他2个答案是正确的,如果需要,您也可以将其存储在javascript变量中。只需使用一个封闭。像这样的东西(但我没有运行这个代码......它只是概念性的。)

$(document).ready(function() {
   var pageNumber = 0;

   // This func can access "pageNumber" even
   //  though the var was declared in outer
   //  scope.
   function goToNewPage(newPageNumber) {
      pageNumber = newPageNumber;
   }

   // This func can access "pageNumber" even
   //  though the var was declared in outer
   //  scope.
   function getCurrentPageNumber() {
      return pageNumber;
   }

}