0

在 Razor 视图中input type="text",我有一个隐藏字段和一个按钮。我可以从表单集合中访问隐藏字段,但很奇怪我无法访问input type="text"我的操作中的值。我不确定我的理解是否正确,但我在想表单中的所有字段都应该在操作中可用。

以下是我的代码:

   @using (Html.BeginForm())
    {
    <div style="margin-top: 40px;">
    <input id="txtDateFrom" class="span2" size="16" value="@Model.StartDate.ToString("dd/MM/yyyy") " readonly="readonly" type="text">
    @Html.Hidden("currencyCode", (object)ViewBag.currencyCode)
    </div>
    <button onclick="@Url.Action("ExchangeRateDetails", "ExchangeRate")" class="btn btn-lg     span2 ARML50px">
    }

我非常感谢您的时间、指导和帮助。

4

2 回答 2

2

您的隐藏输入起作用的原因是您在 Html 帮助程序 @Html.Hidden 的帮助下呈现它。这个助手使用 name 属性渲染输入字段。

<input type="text">缺少名称属性。所以试着这样写:

<input id="txtDateFrom" name="txtDateFrom" class="span2" size="16" value="@Model.StartDate.ToString("dd/MM/yyyy") " readonly="readonly" type="text" />

name="txtDateFrom" 将使值出现在您的 FormCollection 中。

于 2013-10-25T06:03:04.650 回答
1

试试这个方法

你不需要onclick="@Url.Action("ExchangeRateDetails", "ExchangeRate")"按钮

将您的按钮更改为以下方式

<button type="submit" class="btn btn-lg span2 ARML50px">

现在您的控制器可以获取输入文本

[HttpPost]
Public ActionResult ExchangeRateDetails(YourmodelClass xxx)
{
 string dates=Model.StartDate;
}

这个网站有很多关于如何将模型值从视图发送到控制器的答案,请参见本页右上角的相关讨论。

于 2013-10-25T05:33:29.313 回答