我有一个带有2个选项的RadioButtonList - 巴赫巴赫 -Bush bach
我想创建2个会话变量 我做得对吗
Session["beachBach"] = bachRadioButtonList.SelectedValue = "Beach bach";
Session["bushBach"] = bachRadioButtonList.SelectedValue = "Bush bach";
所以如果用户按下选择“Beach bach”,1将被添加到Session [“beachBach”] 同样适用于布什巴赫
或者我需要创建2个radiobuttonlist ??
谢谢
答案 0 :(得分:1)
我认为您需要==
而不是=
:
Session["beachBach"] = bachRadioButtonList.SelectedValue == "Beach bach";
Session["bushBach"] = bachRadioButtonList.SelectedValue == "Bush bach";
否则,您将设置每个单选按钮的SelectedValue
,然后在会话变量中存储该字符串。如果您使用==
,则比较值并在会话变量中存储true
或false
。
如果确实想要存储1
或0
(我不建议这样做 - bool
值应该可以正常工作并生成服务器边码清理器)只需使用(condition) ? (true) : (false)
三元运算符:
Session["beachBach"] = bachRadioButtonList.SelectedValue == "Beach bach" ? 1 : 0;
Session["bushBach"] = bachRadioButtonList.SelectedValue == "Bush bach" ? 1 : 0;
答案 1 :(得分:0)
根据我的理解,您希望根据radiobuttonlist的选定值设置会话变量。为此你可以这样做:
// If bachRadioButtonList SelectedValue != "Beach bach",
// clear session variable, else set value to "Beach bach"
Session["beachBach"] = (bachRadioButtonList.SelectedValue != "Beach bach") ? null : "Beach bach";
// If bachRadioButtonList SelectedValue != "Bush bach",
// clear session variable, else set value to "Bush bach"
Session["bushBach"] = (bachRadioButtonList.SelectedValue != "Bush bach") ? null : "Bush bach";
答案 2 :(得分:0)
您应该存储一个布尔值(1
或true
),而不是存储值false
(您的代码不会这样做)。
Session["beachBach"] = (bachRadioButtonList.SelectedValue == "Beach bach");
Session["bushBach"] = (bachRadioButtonList.SelectedValue == "Bush bach");
但是,你必须携带两个会话变量,这并不是很好。如果有一天你有50个radiobuttons,你真的不想要50个会话变量。相反,您可以创建一个枚举并根据需要选择会话变量:
public enum BachEnum
{
Beach,
Bush
}
Session["bach"] = (bachRadioButtonList.SelectedValue == "Beach bach") ? BachEnum.Beach : BachEnum.Beach;
然后,您可以使用新值扩展枚举,条件可以这样完成:
if ((BachEnum)Session["bach"] == BachEnum.Beach)
// do stuff
答案 3 :(得分:0)
您应该使用selectedIndexChange事件。
void SelectedIndex_Changed(Object sender, EventArgs e)
{
Session["SelValue"] = RadioButtonList1.SelectedItem.Value;
}
无论如何,我不知道你想要达到什么目标,但我很确定你应该考虑不使用两个单一的会话变量。
答案 4 :(得分:-1)
如果值不相互排斥,则创建两个单选按钮列表。我是他们,他们必须在同一个列表中,以确保一次只选择其中一个。