繁体   English   中英

打印单选按钮的名称和ID?

[英]Print name and id of radio button?

我创建了一个单选按钮列表,当我 select 单选按钮并单击提交按钮时,我正在打印所选选项的 ID,我想打印所选单选按钮的名称和 ID。

我做了我所知道的一切,但我遇到了错误,我不知道该怎么做。

这是我的 model。

public class Company
{
    public Nullable<int>  SelectedValue { get; set; }   
   
    public List<Department> Departments
    {
        get
        {
            SampleContext context = new SampleContext();
            return context.Departments.ToList();
        }
    }
}

我创建了一个方法(如下所示),但它没有用

public string depName
{
    get
    {
        Department department = new Department();
        Company c = new Company();
        var dpname = department.Department_Name.Where(department.Department_Id == c.SelectedValue);
        return dpname;
    }
}

这是我的 controller 代码

[HttpPost]
[ActionName("RadioDep")]
public string RadioDepartment(Company company)
{
    
    if (company.SelectedValue is null)
    {
        return "you did not select any department";
    }
    else
    {
        return "you selected"(i want my department name here) " department with id "+company.SelectedValue;
    }
}

这是查看代码

@model Testing_Helpers.Models.Company  
@{
    ViewBag.Title = "RadioDep";
}
<div style="font-family:Arial">
    <h2>RadioDep</h2>
    @using (@Html.BeginForm())
    {
        foreach(var department in Model.Departments)
        {
            @Html.RadioButtonFor(m => m.SelectedValue, department.Department_Id, 
            (department.IsSelected.HasValue && department.IsSelected.Value)? new {@checked = "checked"}:null)
            @department.Department_Name
            <br/>
        }

        <br/>
        <br/>
        <input type="submit" value="Submit" />
    }

</div>

也许添加 FirstOrDefault 会解决它。 我不是专家,但既然你有一个部门列表,它可能会起作用。 尝试这个:

[HttpPost]
    [ActionName("RadioDep")]
    public string RadioDepartment(Company company)
    {

            
            
            
        if (company.SelectedValue is null)
        {
            return "you did not select any department";
        }
        else
        { 
            //EDIT 1 : 
            var dpname = company.Departments.Where(x=>x.Department_Id == company.SelectedValue).FirstOrDefault().Department_Name;
            return "you selected"+dpname+" department with id "+company.SelectedValue;
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM