我是MVC的新手,我正在尝试获取用户从日期选择器中选择的日期,并根据用户输入显示另一组日期。日期选择器工作正常,但我不知道如何获取日期的值并将其传递给计算。我创建了一个文本框来获取用户想要显示的天数以及用于启动计算的按钮,但是我创建按钮的方式也创建了另一个文本框。
以下是视图代码:
@using (Html.BeginForm())
{
<h2>Enter The Number Of Days To Display</h2>
Date: <input type="text" id="date" name="date"value ="Enter a number"/>
@Html.TextBoxFor(model => model.DaysToBeViewed)
<input type="submit" value="Display Days" />
答案 0 :(得分:2)
您可以将日期值部分发布到控制器方法。像这样:
@using(Html.BeginForm()) {
<强>使用Javascript:强>
$(document).ready(function(){
$("#submitDate").on("click", function(){
$.ajax({
type: "POST",
url: "../MyController/Calculate?date=" + $("input#date").val(),
// syntax was wrong here
success: function (result) {
$("#DaysToBeViewed").val(result);
},
error: function () {
alert("Error in calculation method");
}
});
});
});
<强>控制器:强>
public string Calculate(string date)
{
// do your calculation here
return date;
}
查看:强>
@using (Html.BeginForm("Calculate", "ControllerName", FormMethod.Post,
new { enctype = "multipart/form-data" }))
{
<h2>Enter The Number Of Days To Display</h2>
Date: <input type="text" id="date" name="date" value ="Enter a number"/>
@Html.TextBoxFor(model => model.DaysToBeViewed)
<input type="submit" value="Display Days" />
}
<强>型号:强>
public class MyData
{
public string DaysToBeViewed {get; set;}
public string date {get; set;}
}
<强>控制器:强>
[HttpPost]
public ActionResult Calculate(MyData myData)
{
// do your calculation here
return View();
}
答案 1 :(得分:1)