- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我试图将下拉列表的值传递给 session 变量,然后将该值转换为评论页面的文本标签。然后需要将该值传递给 sql 表(不是问题)。问题出在每次我尝试调用标签中下拉列表的值(或索引,我都尝试过)时,我得到一个空异常。这是我在第一页上的一个下拉菜单的代码,以及在下一页尝试将其从创建的 session 中绑定(bind)的尝试:第一页.aspx
<asp:DropDownList ID="ddlInnoc" runat="server">
<asp:ListItem Value="0">No</asp:ListItem>
<asp:ListItem Value="1">Yes</asp:ListItem>
</asp:DropDownList>
FirstPage.aspx.cs
Session["Jabs"] = ddlInnoc.SelectedIndex;
第二页.aspx
<asp:Label ID="lblJabs" runat="server"></asp:Label>
SecondPage.aspx.cs
lblJabs.Text = Session["Jabs"].ToString();
请有人告诉我,我只是愚蠢!我收到的异常如下:
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web
request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
Source Error:
Line 11: {
Line 12: //Capture session values from previous page and send to relevant labels
Line 13: **lblGroup.Text = Session["NoInGroup"].ToString();**
Line 14: lblFirstName.Text = Session["FirstName"].ToString();
Line 15: lblMiddleName.Text = Session["MiddleName"].ToString();
有点奇怪的是,我可以在不同页面上成功获取不同 DropDownList 的 SelectedIndex。它让我撕掉我的头发!
最佳答案
确保在打开第二页之前进行回发。Session["Jabs"] = ddlInnoc.SelectedIndex;
应该在 selectedindexchanged 方法中并且 autpostback 应该在下拉列表中设置例如:
<asp:DropDownList ID="ddlInnoc" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddlInnoc_SelectedIndexChanged">
<asp:ListItem Value="0">No</asp:ListItem>
<asp:ListItem Value="1">Yes</asp:ListItem>
</asp:DropDownList>
方法是这样的:
protected void ddlProject_SelectedIndexChanged(object sender, EventArgs e)
{
//if you want "0" or "1"
Session["Jabs"] = ddlInnoc.SelectedIndex;
//if you want "Yes" or "No"
//Session["Jabs"] = ddlInnoc.SelectedItem.Text;
//also if you want "0" or "1"
//Session["Jabs"] = ddlInnoc.SelectedValue;
}
在大多数情况下,您可能不需要 Selected Index,因为它只是下拉列表中项目的顺序
要确保 session 始终充满,您可以在 Page_Load 上设置它:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Session["Jabs"] = ddlInnoc.SelectedIndex;
}
}
此外:在使用 Session 时,您应该始终意识到 Session 可能会过期,因此您应该始终在使用前检查 NULL,例如:
SecondPage.aspx.cs
lblJabs.Text = (Session["Jabs"] == null ? "Default Value" : Session["Jabs"].ToString());
关于c# - 试图将选定的 DropDownList 传递给 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8263867/
我有两个 ASP.Net 下拉列表,其中的值相同,根据用户输入的不同数据从数据库填充,并且每次都有动态大小。我的情况是,我希望禁用第二个下拉列表中已在第一个下拉列表中选择的任何选项。我做了一些谷歌,大
我有两个相关的模型。 public partial class bs_delivery_type { public decimal delivery_id { get; set; }
我需要能够根据先前 DropDownList 的选择来填充 DropDownList。 我注意到在 SO 上有很多类似的主题,不幸的是,我需要在不使用 AJAX 调用的情况下完成此操作,并且需要在 M
我无法在 ASP.NET MVC 应用程序的 Create View 中获得我们想要的功能。 我们的 Create View 中有两个 DropDownList。 一个是类别选择,第二个应该根据第一个
这个问题在这里已经有了答案: Easiest way to create a cascade dropdown in ASP.NET MVC 3 with C# (1 个回答) 关闭 9 年前。 加
有什么区别 DropDownList.ClearSelection(); 和 DropDownList.SelectedIndex = -1; 在使用下拉列表时? 编辑:我知道 MSDN 上提供的这些
这是一个常见问题,但我不知道如何使用 KendoUI 小部件和 Javascript 来解决它。我有一个 KendoGrid,其数据源来自对 Web 服务的 AJAX 调用。数据绑定(bind)到列。
我有一组问题供用户选择,其中一些问题有第二个选项列表可供选择。我的目标是有一个下拉列表,如果您选择其中一个在其 SecondaryChoiceList 中有项目的选项,那么第二个列表将出现在初始下拉列
我有一组问题供用户选择,其中一些问题有第二个选项列表可供选择。我的目标是有一个下拉列表,如果您选择其中一个在其 SecondaryChoiceList 中有项目的选项,那么第二个列表将出现在初始下拉列
我正在使用带有 ajax 工具包的 asp.net 3.5。 问题:我有一个自定义控件,在更新面板中有两个下拉列表。第一个 DDL 具有属性 AutoPostBack="true" 并且在选择时填充第
我在我的一个 ddl 上选择了其他选项,并且成功获得了该值,但同时我想在代码中的其他 ddl 上获得选项。我怎样才能获得其他 ddl 选项....?我在这里放置了我的问题的代码示例: (no
我们在我们的应用程序中使用自定义表单控件。当我们尝试在这个自定义表单控件中使用 asp dropdownlist 控件时,我得到了这个给定的异常。但是,当我使用 asp 文字控件时,我们不会收到此错误
我有两个 asp.net 下拉列表,我想用 Javascript 操作客户端。这两个下拉菜单位于模态打开内: function() 当 dropdown1.value == "me"时我想要禁用 dr
我有一个 WebForms 页面,上面有两个 DropDownList 控件,它们都包含 60-80 度的温度范围,一个用于加热,另一个用于冷却。它们在 .aspx 中声明为: 每个列表的值都使用
抱歉这个愚蠢的问题,我以前使用过 MVC,但以前从未做过这样的事情。 好吧,假设我正在实现一个门票系统,用户可以在特定时间和巴士上预订门票。 在“预订”页面中,我有2个DropDownList,其中一
我有一个 activeDropDownList 类型的字段,用户在其中选择所需的月份,并且 View “mobilizer”处理所选月份的大量查询。 但是,渲染页面后,activeDropDownLi
我试图禁用列表框中的多选,但是当我调用removeAttr('multiple')时,它会将我的列表框变成下拉列表。我不需要下拉菜单,我想保留列表框。我该如何调整才能实现这一目标?谢谢。 @Ht
我需要在 WinForm 上显示一些韩文文本。文本在我的 ListBox 控件中显示良好。相同的文本不会显示在我的 DropDownList 控件中。两个控件的字体均为 Arial 8pt。两个控件的
我有一个简单的问题。我有一个 dropDownList,我试图用存储过程中的 id 填充它。然而它似乎不起作用。这是我的下拉列表: Select new CaseFile:
绑定(bind)后下拉菜单显示以下值: 第一优先级低 第二优先级中 第三优先级高 每次回发后下拉列表显示以下值: 第一优先级低 第二优先级中 第三优先级高 第一优先级低 第二优先级中 第三优先级高 这
我是一名优秀的程序员,十分优秀!