当用户选择日期时,如何使用这段jquery代码从datePicker中获取日期,然后使用BeginForm()将日期作为字符串发送到控制器?如何访问我的razor和asp.net代码使用的标签之间的代码?
以下是我在论坛上发表的一些提示但尝试没有运气的尝试。
<script type="text/javascript">
$(function () {
onSelect: Function(dateText, inst);
{
var theDate = $("#date").datepicker('getDate');
var dateAsObject = $(this).datepicker('getDate');
}
String selectedDate"";
selectedDate=theDate.toString();
});
所以在提出建议之后我一直试图这样做:
<script type="text/javascript">
$(function () {
$(".datepicker").datepicker({dateFormat: 'yy.mm.dd'})
});
</script>
@using (Html.BeginForm("Action", "Controller", new { @id = "formName", @Name = "formName" }))
{
Date: <input type="text" class="datepicker" onchange="$('#formName').submit();"
}
然后在控制器中:
public ActionResult myMethod(DateTime? date=null)
{
if if (date != null)
{
//do
}
}
在控制器中,日期始终为空。我是否将我的GeginForm命名为错误?
答案 0 :(得分:0)
只要使用altField
和altFormat
选项选择日期,您就可以使用自己的日期格式填充备用字段。此功能可用于显示用户选择的人性化日期,同时通过更加计算机友好的日期进行进一步处理。
代码:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Datepicker - Populate alternate field</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/base/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script src="http://code.jquery.com/ui/1.9.1/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function() {
$( "#datepicker" ).datepicker({
altField: "#alternate",
altFormat: "DD, d MM, yy"
});
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker" /> <input type="text" id="alternate" size="30" /></p>
</body>
</html>
希望这有帮助!
答案 1 :(得分:0)
你有复杂的事情。只需将onchange事件用于输入,当datepicker进行更改时,它将触发操作。
控制器:
// You can use "String?" type here
public ActionResult Index(DateTime? date = null)
{
if (date != null)
{
// Your Logic Here!
}
}
查看:
<script type="text/javascript">
$(function() {
$( ".datepicker" ).datepicker({ dateFormat: 'yy.mm.dd' });
});
</script>
<input type="text" class="datepicker" onchange="$('#YourForm').submit();" />
每当用户选择日期时,我也会使用它来显示该日期的数据。 简单快捷..