私の見解には次のようなスクリプトがあります。
$('.datepicker').datepicker
(
{ onSelect: function (dateText, inst) {
//pass dateText to my controller
});
</script>
私のコントローラーは次のようなものです。
public ActionResult Index()
{
string dateSelected = dateText; //read dateText here
if (DateTime.TryParse(dateSelected, out date))
{
date = Convert.ToDateTime(dateSelected);
var reservations = db.Reservations.Where(r => r.Date == date).Include(r => r.Employee).Include(r => r.Room).OrderByDescending(r => r.Date);
return View(reservations);
}
return View();
}
現在のページを更新または再ロードせずに、dateTextをコントローラーに渡したい。どうやってするか?
以前にフォームを試しましたが、日付ピッカーのonselectイベントで、コントローラーがフォームを受け入れることができるようにフォームを自動的に送信します。しかし、現在のページを更新または再ロードしたくありません。
ユーザーが通過に気付かずにdateTextをコントローラーに渡したいだけです。ある種の$.postだと思いますが、実装方法がわかりません。
更新:これが私の試みです、何が悪いのですか:
これが私のスクリプトです。
JSONstring = JSON.stringify(dateText);
$.post("/Home/Index", { jsonData: JSONstring });
これが私のコントローラーです:
public ActionResult Index(string jsonData)
{
CacheClear();
string dateSelected = jsonData;
.....
//i tried to debug it, but no value of jsonData
}