1

写真に表示されているように WebGrid を作成し、rariobutton で選択した行を取得する方法

ここに画像の説明を入力

祝福

4

2 に答える 2

0

これを試して

 myGrid.Column(header: "Select", format: @<text><input name="chck" 
  TYPE="RADIO" CHECKED="@item.select" /></text>),

このリンクもチェックしてくださいhttp://fiddle.jshell.net/Gt4GH/

これはコンパイルされたコードではありません。これを試して、うまくいくかどうか教えてください:)

于 2012-06-21T06:14:01.357 に答える
0

ビューモデルを定義できます:

public class UserViewModel
{
    public int Id { get; set; }
    public string Email { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
}

public class MyViewModel
{
    public int? SelectedUserId { get; set; }
    public IEnumerable<UserViewModel> Users { get; set; }
}

次にコントローラー:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        var users = Enumerable.Range(1, 5).Select(x => new UserViewModel
        {
            Id = x,
            Email = "email " + x,
            FirstName = "fn " + x,
            LastName = "ln " + x,
        });
        var model = new MyViewModel
        {
            Users = users
        };
        return View(model);
    }

    [HttpPost]
    public ActionResult Index(int? selectedUserId)
    {
        return Content(string.Format("Thank you for selecting user id: {0}", selectedUserId));
    }
}

そして最後にビュー:

@model MyViewModel

@{
    var grid = new WebGrid(Model.Users);
}

@using (Html.BeginForm())
{
    @grid.GetHtml(
        columns: grid.Columns(
            grid.Column(
                header: "Select", 
                format: @<text>@Html.RadioButtonFor(x => x.SelectedUserId, (int)item.Id)</text>
            ),
            grid.Column("Email"),
            grid.Column("FirstName", "First Name"),
            grid.Column("LastName", "Last Name")
        )
    )
    <button type="submit">OK</button>
}
于 2012-06-21T06:20:59.260 に答える