メソッドを使用してコントローラーにフォーム送信メソッドが1つBeginForm()
ありますが、この同じメソッドには、_Layout.cshtml
ページにある送信ボタンのクリックイベントもあります。現在、最初のクリック イベントが発生し、次にBeginForm()
メソッドが呼び出されます。
BeginForm()
では、送信ボタンのクリックイベントの前にメソッドを最初に呼び出す方法は?
送信ボタンクリックイベント: ( _Layout.cshtml
)
$("#SaveData").click(function (b) {
debugger
var list = new Array();
var postData;
$('input.chkevent').each(function () {
debugger
if (this.checked == true) {
var parent_id = this.parentElement;
var par2 = parent_id.previousElementSibling;
var par3 = par2.previousElementSibling;
var child = par3.childNodes[0];
var child_val = child.defaultValue;
var arr_date = this.parentElement.nextElementSibling.childNodes[0].value;
var dep_date = this.parentElement.nextElementSibling.nextElementSibling.childNodes[0].value;
var id = new Array(); ;
id.push(child_val, arr_date, dep_date);
list.push(id);
postData = { values: list};
}
});
$.ajax({
url: '@Url.Action("FormData", "HomeSurface")',
//jQuery.ajaxSettings.traditional = true
// url: "CheckEvent/PersonEvent?id=" + allVals,
data: postData,
type: "POST",
traditional: true,
// dataType: "json",
// traditional: true,
success: function () {
}
});
});
Submit_Form (Index.cshtml):
@using (Html.BeginUmbracoForm<HomeSurfaceController>("FormData"))
{
<fieldset>
</fieldset>
}
コントローラーで:
public ActionResult FormData(PERSON_MASTER person, string[] values)
{
}