2016-06-14 82 views
-1

我有一些页面用html编写,所有的控件都在html中,就像文本框一样,我不能将这些控件更改为@ html.text。 但我必须从controller中获取数据并做一些逻辑数据。有人告诉我如何获取数据? 这是我查看HTML代码写在HTML如何从html控件中获取数据以查看控制器?

<div class="clearfix"></div> 
           <label class="label">Customer Name</label> 
           <select class="browser-default" name="Customername"> 
            <option value="Customer Name1">Customer Name1</option> 
            <option>Customer Name2</option> 
            <option>Customer Name3</option> 
           </select> 
           <div class="pull-left"><a href="#" class="newCustomer">New Customer</a></div> 
           <div class="clearfix"></div> 
           <label class="label">Job Referene</label> 
           <select class="browser-default" name="jobreference"> 
            <option>Job Referene</option> 
           </select> 
           <div class="clearfix"></div> 
           <label class="label">Quantity</label> 
           <input type="text" name="quantity" /> 
           <div class="clearfix"></div> 
           <label class="label">Browser Select</label> 
           <select class="browser-default"> 
            <option value="" disabled selected>Choose your option</option> 
            <option value="1">Option 1</option> 
            <option value="2">Option 2</option> 
            <option value="3">Option 3</option> 
           </select> 

我想在我的控制器来获取数据。

回答

1

如果HTML控件都有一个名字,你可以使用的FormCollection这样的:

public class HomeController : Controller 
{ 
    [HttpPost] 
    public ActionResult Index(FormCollection formCollection) 
    { 
     var value = formCollection["nameOfControl"]; 
     //do stuff 
     return View(); 
    } 
} 

虽然小心;这是 - 一般 - 不是一个好方法。

+0

另请参阅:https://stack247.wordpress.com/2011/03/20/get-forms-post-values-in-asp-net-mvc-with-formcollection/ – Leon

1

你必须在每个视图页面的HTML控件的名称属性控制器

在你看来

<input type ="text" name"Textbox1" value="TestValue" /> 

访问它的价值在你的控制器

public ActionResult Test(string Textbox1) 
{ 
    // Do your code manipulation here 
} 

注意:名称属性必须与控制器中的参数名称匹配,您可以拥有任意数量的命名参数,否则可以使用si单个表单集合来访问输入字段。

+0

有太多的控件。 ..我可以用这种方式获取数据吗? –

+0

使用formcollection - 就像我在我的回答中所说的那样 - 所有的控件都会在后期推送到集合中。 – Leon

+0

我用formcollection,但我只是得到每个控件的名称属性,而不是我填写我的控件的值.... :( –

相关问题