ユーザーが何時間 (ゲームアプリ) 1 日何時間プレイしたいか、どの時間からどの間隔で開始するかを選択できるビューを作成しようとしています。しかし、コントローラー アクション メソッドをビューから実行するのに苦労しています。ボタンをクリックしても何も起こらないので何が問題なのですか
私の見解:
<script type="text/javascript">
$('#genhours').click(function () {
var selectedId=$('#dayID').val();
var count = $('#count').val();
var starttime = $('#starttime').val();
var interval = $('#interval').val();
var dayId=
$.ajax({
url: "../Day/MakeHours",
data: { 'dayId': selectedId, 'count': count,'starttime':starttime, 'interval':interval },
type: "post",
cache: false,
},
error: function (xhr, ajaxOptions, thrownError) {
$('#lblError').text("Error encountered while saving the comments.");
}
});
});
</script>
形:
<div id="dayID" >
@Html.HiddenFor(model => model.dayID)
</div>
<div class="display-label">
Hour per Day
</div>
<div class="display-field">
<input id="count" />
</div>
<div class="display-label">
StartTime
</div>
<div class="display-field">
<input id="starttime" />
</div>
<div class="display-label">
Interval
</div>
<div class="display-field">
<input id="interval"/>
</div>
<br />
</div>
<p>
<input type="submit" id="genhours" value="Generate Hours" />
<input type="button" id ="cancel" title="cancel" onclick="location.href='@Url.Action("Index")'" />
</p>
私のコントローラー機能:
[HttpPost]
public ActionResult MakeHours(int dayId, int count, string starttime, int interval)
{
for (int i = 0; i < count; i++)
{
Hour hour = new Hour();
hour.day = db.Days.Find(dayId);
if( i==0)
hour.time = starttime;
else
hour.time = starttime+interval;
hour.booked = false;
db.Hours.Add(hour);
db.SaveChanges();
}
return RedirectToAction("Hour/Index");
}
}