मैंने अब तक पेजिंग के लिए क्या किया है पेजर नियंत्रण, यह एक पेजिंग यूआरएल, अद्यतन के लिए एचटीएमएल तत्व आईडी, पेज नंबर, पेज आकार और कुल गिनती लेता है।
पेजिंग यूआरएल प्रपत्र नियंत्रक/कार्रवाई जहां कार्रवाई देता है एक HTML स्ट्रिंग (डेटा का गाया पेज)
पेजर पृष्ठों के लिए जावास्क्रिप्ट लिंक की एक सूची संलग्न कर देता है की है। ये लिंक एक jQuery आधारित AJAX फ़ंक्शन को कॉल करते हैं जो पेजिंग यूआरएल को हिट करता है। प्रत्येक पृष्ठ AJAX कॉल के परिणामों के साथ HTML तत्व की वर्तमान सामग्री को प्रतिस्थापित करता है। कुछ इस तरह:
int.TryParse (Request.Params [ "PAGENUMBER"], बाहर पेज:
public string Render()
{
var buffer = new StringBuilder(1000);
buffer.AppendLine(@"<ul class=""datatable_pager"">")
.AppendLine("\t<li>Additional Pages:</li>");
int numberOfPages = TotalItemCount % PageSize == 0 ? TotalItemCount/PageSize : TotalItemCount/PageSize + 1;
for(int i = 0; i < numberOfPages; i++)
{
AppendPageLink(buffer, i);
}
buffer.AppendLine("\t</ul>");
AppendPagingJS(buffer);
return buffer.ToString();
}
private void AppendPageLink(StringBuilder buffer, int i)
{
buffer.Append("\t\t<li><a href=\"")
.Append(PagingLink.Replace("$PAGE$", i.ToString()))
.Append("\">")
.Append(i.ToString())
.Append("</a>")
.AppendLine("\t\t</li>");
}
private void AppendPagingJS(StringBuilder buffer)
{
buffer.AppendLine(@"
<script type=""text/javascript"">
function page(page, size, updateElement)
{
$.post('" + PagingUrl + @"',
{
pageNumber: page,
pageSize: size,
},
function(response)
{
$(""#"" + updateElement).html(response);
},
""html""
);
}
</script>");
}
पेजिंग यूआरएल को जावास्क्रिप्ट पदों, इसलिए कार्रवाई तो की तरह कुछ करने की आवश्यकता होगी) int.TryParse (Request.Params ["पेज साइज"], आउट आकार))
और डेटा पेज को पकड़ने के लिए अपने डेटा एक्सेस घटकों के साथ परिणामों का उपयोग करें, इसे HTML के रूप में प्रस्तुत करें और इसे वापस करें।
आशा है कि मदद करता है, यदि आवश्यक हो तो मैं इसका विस्तार कर सकता हूं।
स्रोत
2008-10-30 05:44:12
एक लिंक 404 है, एक ब्लॉग के होम पेज पर एक अंक है, और अंतिम लिंक बिल्कुल उपयोगी नहीं है। FAIL! – Martin
कुछ खोज करने के बाद, इस लिंक ने मुझे कुछ कोड की ओर इशारा किया जिसने मदद की: http://blogs.taiga.nl/martijn/2008/08/27/paging-with-aspnet-mvc/ – Martin