2

我需要在单击按钮时将文本框数据传递给控制器​​操作。这是我的代码:

<input id="txt" type="text">
<button onclick="@Url.Action("MyAction", "Mycontroller", new {currencyCode=ViewBag .currencyCode,endDate=Model.StartDate, value entered in txt above})" > 

我不能在这里使用表格。您能否建议我如何访问/将此值传递给操作?

感谢您的帮助和指导。

4

4 回答 4

6

下面的代码将文本框值发送到控制器的操作。

<input id="txt" type="text">
<button id="button">Click Me</button>

@section Scripts {
    <script type="text/javascript">
        $("#button").click(function () {
            var txtVal = $("#txt").val();
            window.location = "@Url.Action("TheAction","TheController")" + 
                              "/" + txtVal;
        });
    </script>
}
于 2013-10-25T04:25:12.740 回答
4

你可以使用类似的东西

<div>
  <input type='text' name='UnboundTextBoxName' />
</div>

MVC 将自动获取 UnboundTextBoxName 的值并将该值插入到同名参数中。

于 2013-10-25T06:03:39.820 回答
2

您应该使用<form>标签并将操作设置为您的控制器,并在模型中设置一个位置来存储数据。

于 2013-10-25T03:55:53.867 回答
0

这将帮助您将在文本框中输入的值作为 url 的一部分,然后在您指定的控制器中点击所需的操作

<form id = "form1" runat="server">
   <asp:TextBox id= "txtbox" runat="server"></asp:TextBox>
   <input type="button" id = "searchbtn" value="Search" onclick="srch_Click()"/>
</form>

<script type ="text/javascript" >
function srch_Click() {
        var host = window.location.host;
        var txt = $("#txtbox").val();
        var path = "/CONTROLLER/ACTION/" + txt;
        window.location.pathname = path;
        var url = host + path;
        window.location(url);
    }
</script>

欢迎对上述代码进行任何即兴创作

于 2016-12-21T09:35:25.403 回答