ユーザーの価格帯の選択に基づいて結果をフィルタリングしようとしています。そのため、価格の範囲を表示するために jquery スライダーを選択します。ajax
そして、スライダーでjqueryを使用してWebメソッドを呼び出すことにしましたstop event
。
この段階ではすべて問題ありません。jqueryajax
呼び出しによって渡された最小範囲と最大範囲に基づいてレコードをフィルタリングする Web メソッドのコードを次に示します。
[WebMethod]
public static void FilterByPrice(double min,double max)
{
List<BALHotelList> searchresult =(List<BALHotelList>) HttpContext.Current.Session["searchresult"];
searchresult = searchresult.Where(t => (double)t.totalPrice >= min && (double)t.totalPrice <= max).ToList();
HttpContext.Current.Session["searchresult"] = searchresult;
SearchResult s = new SearchResult();
s.Paging();
}
問題は、リピーター制御のPaging
設定に使用されるメソッドにあります。datasource
ページング方法は次のとおりです。
protected void Paging()
{
List<BALHotelList> searchresult = (List<BALHotelList>)Session["searchresult"];
PagedDataSource objPds = new PagedDataSource();
objPds.DataSource = searchresult;
objPds.AllowPaging = true;
objPds.PageSize = Convert.ToInt32(ddlPageNo.SelectedValue);
objPds.CurrentPageIndex = CurrentPage;
lblCurrentPage.Text = "Page: " + (CurrentPage + 1).ToString() + " of "
+ objPds.PageCount.ToString();
// Disable Prev or Next buttons if necessary
cmdPrev.Enabled = !objPds.IsFirstPage;
cmdNext.Enabled = !objPds.IsLastPage;
rptHotels.DataSource = objPds;
rptHotels.DataBind();
}
このメソッドが呼び出されると、オブジェクト参照が設定されていないというエラーが発生します。今回はページ コントロールにアクセスできないことを理解しています。アクセスページ制御に関するこの問題を完全に否定するいくつかの回答を読んだので
今、私は自分のタスクを完了するためにどのアプローチを使用すべきかを知りたいです。
jqueryの価格スライダーを使用してレコードをフィルタリングしますか?