我有一个称为索引的视图,我在该视图上使用模式来显示视图模式 是“问题和已接收”模式,问题显示不同的记录,接收到的显示不同的记录。在索引视图上,我有一个日期选择器和一个选择任何日期的按钮,然后单击该按钮,我要显示与该特定日期匹配的记录,但是在不同的看法,我不明白如何使用传递日期值的jQuery post方法实现
这是我的cshtml和jquery
<div class="row">
<div class="col-7 offset-4">
<div class="form-inline">
<input id="date" class="eadate form-control" />
<button id="print" class="print btn btn-default"><i class="fas fa-print"></i></button>
</div>
</div>
</div>
$(function() {
$('#print').click(function () {
var Date = $('#date').val();
$.post('@Url.Action("Records", "LaundryFirm")', { dateval: Date });
});
});
here is my controller method
public ActionResult Records(DateTime? dateval)
{
var res = db.Query<RoomLaundryvw>($"Select rm.RoomID,rm.RoomNo,g.GuestID,g.GuestName,ln.ReservationID,ity.ItemTypeName,it.ItemName,ln.PickDate,ln.DropDate from Laundry ln " +
"inner join Items it on ln.ItemId = it.ItemId " +
"inner join ItemTypes ity on ity.ItemTypeId = it.ItemTypeId " +
"inner join Rooms rm on ln.RoomID = rm.RoomID " +
"left join Reservation_Guest rg on rg.ReservationID = ln.ReservationID " +
"left join Guests g on g.GuestID = rg.GuestID " +
$"where ln.PickDate = '{dateval}'").ToList();
return View("Records", res);
}
在这种情况下,eadate类指向datepicker,在调试器模式下,我获取了选择的日期的值,但是问题是我没有使用该日期的相应记录重定向到Records视图。请帮助我
答案 0 :(得分:0)
问题尚不清楚,但我想您想在onClick #print按钮后显示数据
而不是
返回视图(“记录”,res);
使用
返回PartialView(“记录”,res);
并将呼叫功能更改为
var url = '@Url.Action("Records", "LaundryFirm")';
$('#print').click(function() {
var Date = $('#date').val();
$('#result').load(url, { dateval: Date });
})
按钮之后或您想添加id = result的div
<div class="row">
<div class="col-7 offset-4">
<div class="form-inline">
<input id="date" class="eadate form-control" />
<button id="print" class="print btn btn-default"> <i class="fas fa-print"></i> </button>
</div>
</div>
</div>
<div id="result"></div>