获取asp.net MVC中下拉列表和文本框值的值

Posted

技术标签:

【中文标题】获取asp.net MVC中下拉列表和文本框值的值【英文标题】:Get the value of dropdown and textbox value in asp.net MVC 【发布时间】:2021-09-18 04:05:30 【问题描述】:

请帮助我。我需要获取文本框的值和下拉列表的值。

到目前为止,我能够使用此代码获取下拉列表的值

public class DropdownOrder
    
        public int Id  get; set; 
        public string Value  get; set; 
    

public class DropdownOrderVM
    
        public int DropdownId  get; set; 
        public string SearchValue  get; set; 
        public List<DropdownOrder> DropdownList  get; set; 
    

public async Task<ActionResult> Index()
        
            var vm = new DropdownOrderVM();
            vm.DropdownList = new List<DropdownOrder>
            
                new DropdownOrder  Id = 1, Value = "1" ,
                new DropdownOrder  Id = 2, Value = "2" ,
                new DropdownOrder  Id = 3, Value = "3" 
            ;


            return View(vm);
        

这是查看代码

            <select class="form-control" asp-for="DropdownId"
                    asp-items="@(new SelectList(Model.DropdownList,"Id","Value"))">
                <option>Please select one</option>
            </select>
           
       
                <input type="search" name="search" id="search"  asp-for="SearchValue"  placeholder="Search" class="form-control" aria-label="Search">
                
          

这是我的控制器,当点击按钮提交时调用它

[HttpPost]
        public ActionResult Create(DropdownOrderVM model)
        
            return View();
        

我只能获取下拉列表的值。但是我在视图中添加了代码

<input type="search" name="search" id="search"  asp-for="SearchValue" >

那么为什么我的代码没有返回文本框中的用户输入?

我做错了什么?

【问题讨论】:

你能发布你的整个视图吗,包括模型部分 可以删除代码name="search",也可以改成name=SearchValue,就可以了。 【参考方案1】:

您明确为与模型字段不匹配的文本框提供名称和 ID。从您的搜索文本框中删除这 3 个属性:type="search" name="search" id="search"。标签助手 asp-for 会为您完成这项工作。

【讨论】:

以上是关于获取asp.net MVC中下拉列表和文本框值的值的主要内容,如果未能解决你的问题,请参考以下文章

如何在 asp.net 代码中获取引导文本框值并在存储过程中作为参数发送?

根据上一个列表中选择的值填充下拉列表(asp.net mvc3)

asp.net mvc c# - 是不是可以从 CodeBehind 中的模型访问视图中文本框的值?

ASP.NET MVC 组合框值加载

在 ASP.NET MVC5 中使用文本框值添加更多日期时间值

无法更改 ASP.NET MVC 3 中文本框的值