多个下拉框值发送到控制器

时间:2013-03-11 14:26:14

标签: c# asp.net-mvc-2

enter image description here

我必须使用下拉框创建上述类型的动态UI。下拉框的值如上所示是固定的。

我的问题是我需要将付款方式下拉框值发送到mvc控制器。我需要根据服务密钥发送所选下拉值。我不知道该怎么做。 有什么想法吗?

更新

付款类型可以像枚举一样。它看起来如下。

public enum PaymentOption
    {
        [Display(Name = "Select Payment Type")]
        None = 1,

        [Display(Name = "Service Hourly")]
        ServiceHourly = 2,

        [Display(Name = "Salary Flat Rate")]
        SalaryFlatRate = 3,

        [Display(Name = "% of Appointment")]
        PercentOfAppointment = 4,

        [Display(Name = "Per Appointment")]
        PerAppointment = 5,

    }

2 个答案:

答案 0 :(得分:1)

试试这个示例代码

var url = '@Url.Action("Youractionname")';

        $.ajax({
            type: "POST",
            url: url,
            data: '{ddl1: "' + ddl1value+ '",ddl2: "' + ddl2value+ '"}',
            contentType: "application/json; charset=utf-8",
            dataType: "json"
        });


    [HttpPost]
    public ActionResult Youractionname(int ddl1, int ddl2)
    {
        //do work
    }

答案 1 :(得分:1)

您需要为“服务”创建一个列表,并将列表项绑定到您的模型。

public class Service {
  string Name { get;set;}
  int PaymentType { get;set;}
  float HourlyRate { get;set;}
}

public class MyModel { 
  ICollection<Service> services { get;set;}
  [...]
}

然后,按照本文创建视图并正确绑定服务列表:

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx