我需要在按钮点击时将文本框数据传递给控制器操作。这是我的代码:
<input id="txt" type="text">
<button onclick="@Url.Action("MyAction", "Mycontroller", new {currencyCode=ViewBag .currencyCode,endDate=Model.StartDate, value entered in txt above})" >
我不能在这里使用表格。您能否建议我如何访问/传递此值以进行操作?
感谢您的帮助并指导我。
答案 0 :(得分: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>
}
答案 1 :(得分:3)
您可以使用类似
的内容<div>
<input type='text' name='UnboundTextBoxName' />
</div>
MVC将自动获取UnboundTextBoxName的值,并将该值插入到同名参数中。
答案 2 :(得分:2)
您应该使用<form>
标记并将操作设置为控制器,并在模型中设置一个位置来存储数据。
答案 3 :(得分:0)
这可以帮助您将在文本框中输入的值作为网址的一部分,然后在指定的控制器中点击所需的操作
<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>
欢迎任何对上述代码的即兴表达