編集ページがあり、ボタンを押したときにサーバーにいくつかの変更を送信し、#main というページの特定の部分の div を別のページに変更して、新しい情報で更新したいと考えています。
これを行うには、送信ボタンを使用できないと思います (間違っている場合は修正してください)。そのため、jquery 関数を使用して、ページの選択部分のクリックと変更を処理しています。
現在、サーバーに送信されるオブジェクトは空であり、変更されたコンテンツではありません。
問題のあるビューは次のとおりです。
@model Project.Models.ExampleModel
@using (Html.BeginForm())
{
<fieldset>
<legend>Edit Example: @Model.name</legend>
<br/>
@Html.LabelFor(c => c.name)
@Html.TextBoxFor(c => c.name)
<br/>
@Html.LabelFor(c => c.dropdown)
@Html.DropDownListFor(c => c.dropdown, Model.dropdowns)
<br />
<br />
<input type="button" data-edit-id="@Model.id" value="Submit Changes" />
</fieldset>
}
<script type="text/javascript">
$(document).ready(function () {
$('input[data-edit-id]').on('click', function () {
var id = $(this).attr('data-edit-id');
console.log(id);
$.post('Home/EditPage', '@Model');
$("#main").load("/Home/NewDivPage?id=" + id);
});
});
</script>
どんな助けでも大歓迎です