MVC 4将模型属性id发送到控制器类

时间:2012-07-04 11:25:31

标签: asp.net-mvc-4

如何将模型属性Name的id发送到MVC4应用程序中的Controller类

  public class{
public Name{get;set;}
}

使用该属性的id访问名称 更新: 这里如果在运行时使用jquery更改Name,我想将更改后的名称id发送到控制器类

更新: 这是我的VIew

<script type="text/javascript">

$(function () {

    $('.editor input').blur(function () {
        $(this).hide();
        $(this).closest('p').find('label').html($(this).val()).show();

    });

    $('.editor label').click(function () {
        $(this).hide();
        $(this).closest('p').find('input').show();

    });

});

@using (Html.BeginForm("Homepage", "Home", FormMethod.Post))
{ 
     <div class="editor">

    <p>
        @Html.LabelFor(x => x.Name, Model.Name)
        @Html.EditorFor(x => x.Name)
       <input type="submit" value="OK"  />
       </p>

     <p>
        @Html.LabelFor(x => x.Company, Model.Company)
        @Html.EditorFor(x => x.Company)
      <input type="submit" value="OK" />
    </p>
     <p>
        @Html.LabelFor(x => x.City, Model.City)
        @Html.EditorFor(x => x.City)
         <input type="submit" value="OK" />
    </p>
</div> 
<input type="submit" value="OK"   />
}

这是我的模特

 public class Details
{

    public string Name
    { get; set; }


    public string Company
    { get; set; }


    public string City
    { get; set; }


}

这是我的COntroller方法

 public ActionResult Homepage(Details d)
    {
        d.Name = "Rakesh";
        d.Company = "TCS";
        d.City = "DElhi";
        return View(d);
    }

    [HttpPost, ActionName("Homepage")]
    public ActionResult Indexof(Details d)
    {
      return View(d);
    }

这里我正在编辑并向控制器发送数据但我的问题是当我点击Rakesh为例并更改名称然后我需要点击按钮两次然后只将更改的数据发送到控制器类

1 个答案:

答案 0 :(得分:1)

型号:

public class SomeModel {
    public string Name { get; set; }
}

控制器:

[HttpPost]
public ActionResult YourAction( SomeModel m )
{
    if( ModelState.IsValid )
    {
        // use model
        var name = m.Name;

        return RedirectToAction( "Index", "Home" );
    }
    return View( m );
}

如果这不是你所需要的,请澄清你所说的“id”是什么。