私たちのウェブサイトの求人リストに求人フィルターを付けようとしています。ジョブ タイプのフィルターは UpdatePanel にラップされ、フィルターを適用するボタンは同じページにリダイレクトされます。
これは、XSLT で umbraco.library:RequestQueryString を使用してジョブ リストを設定するためです。
ただし、クエリ文字列フィルター値は RadioButtonList を選択していないようです。例えば:
ページが読み込まれますが、vt が null であるため何も起こりません。
protected void Page_Load(object sender, EventArgs e)
{
string vt = Request.QueryString["vt"];
if (vt != null)
{
foreach (ListItem li in rblVacancyType.Items)
{
if (li.Value == vt)
{
li.Selected = true;
}
}
}
}
<asp:UpdatePanel ID="upSearchFilters" runat="server">
<ContentTemplate>
<p>
<asp:RadioButtonList ID="rblVacancyType" runat="server">
<asp:ListItem Text="All" Value="all"></asp:ListItem>
<asp:ListItem Text="Permanent" Value="permanent"></asp:ListItem>
<asp:ListItem Text="Temporary" Value="temporary"></asp:ListItem>
</asp:RadioButtonList>
</p>
</ContentTemplate>
</asp:UpdatePanel>
ボタンは次のとおりです。
<asp:ImageButton ID="ibFilters" ImageUrl="~/images/buttons/filter-button.png" OnClick="ibApplyFilters_Click" runat="server" />
手順は次のとおりです。
protected void ibApplyFilters_Click(object sender, EventArgs e)
{
Response.Redirect("/careers/join-us/?filters=true&vt=" + rblVacancyType.SelectedValue.ToString());
}
しかし、ページが初めてリダイレクトされるとき、何も選択されていないので、永久をクリックすると、永久に選択されます。次に「すべて」または「一時」を選択しても、選択は変更されません。
何か案は?