여기 내가하려는 일이 있습니다. 드롭 다운에서 값을 선택하고 해당 페이지와 포스트 백으로 이동하십시오.ASP.NET, 드롭 다운 목록 및 응답 리디렉션
1.aspx 페이지
<asp:ListItem>a</asp:ListItem>
<asp:ListItem>b</asp:ListItem>
<asp:ListItem>c</asp:ListItem>
<asp:ListItem>d</asp:ListItem>
</asp:DropDownList>
Csfile :
세부 사항을 작성 후, 'A'페이지 a.aspx로 리디렉션 옵션을 선택에protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DropDownList1.Enabled = true;
}
else
{
DropDownList1.Enabled = false;
DropDownList1.Attributes.Add("disable", "disable");
if (this.Session["Template"] == "a ")
{
this.DropDownList1.Attributes.Add("disable", "disable");
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList1.SelectedValue == "a")
{
Response.Redirect("~/a.aspx");
DropDownList1.Attributes.Add("disable", "disable");
}
1 페이지로 다시 이동 .aspx
여기에서 드롭 다운을 사용하지 않도록 설정하여 사용자가 특정 Dr opdown. 나는 위의 모든 옵션을 시도했지만 아무 것도 효과가 없었다.
답장을 보내 주셔서 감사합니다. 하지만 여전히 효과가 있습니다. 내 CS 파일은 이제 무효를 Page_Load (개체를 보낸 사람, EventArgs입니다 전자) { 을 보호하는 경우 (! IsPostBack을) {경우 (this.session [ "템플릿"] == "A") { DropDownList1.Enabled = 거짓; } } – user2340141
세션 [ "템플릿"]'에 실제로 ""a "가 있는지 확인하십시오 - 디버거에서 유효성을 검사하십시오 - 단지 그것이 설정된 것으로 가정하지 마십시오 :) – Darren
예"a "가 표시됩니다. 그러나 일하지 않는다. – user2340141