私はasp.net MVC 2アプリケーションとして取り組んでいます。私はこのようなフォームを持っています:
<% using (Html.BeginForm("SaveCallRecording", "Recording", FormMethod.Post, new { id = "frmAddCallRecording", name = "frmAddCallRecording" }))
{%>
<tr>
<td>
</td>
<td>
<input type="button" id="btnCall" title="Call" value="Call" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" />
<input type="button" id="btnNewCall" title="New Call" value="New Call" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" />
</td>
</tr>
</table>
<%} %>
私はこれをdocument.readyに持っています
$("#btnCall").click(function () {
var CallStatus = $("#txtCallStatus").val();
if (CallStatus == 'READY') {
if ($("#isUniquePassword").is(':checked') && $("#UniquePassword").val() == '') {
$("#dialog-RecipientEmail-error").dialog("open");
}
else {
$.ajax({
type: "POST",
dataType: "json",
url: "/account/getGenericPassword",
success: function (data) {
if (data == null || data == "") {
if ($('#isGenericPassword').is(':checked')) {
$("#dialog-add-generic-password").dialog("open");
}
}
else {
$("#frmAddCallRecording").submit();
//after this I want to show alert based on result
}
}
});
} // end of isUniquePassword if
} // end of call status if
else if (CallStatus == 'NOT SET') {
$("#dialog-required-fields").dialog("open");
}
});
コントローラーは次のようになります。
[Authorize]
[HttpPost]
public JsonResult SaveCallRecording(CallRecording recording, FormCollection form)
{
return Json("record saved!");
}
actionresult SaveCallRecording が実行された後、成功または失敗のメッセージを表示したい。どうすればできますか?$.ajax を試す場合、`data: { "item" : "value1" , ....} を使用して手動でフォーム データを作成する必要があります。$.post を使用してみましたが、手動でデータを渡す必要があります。ボタンではなく送信ボタンとして btnCall を作成すると、検証が失敗します。
したい:
1) 最初にフォームを検証し、フォームが検証されていない場合はアラートを表示します。2) フォーム データを json アクション メソッド SaveCallRecording に投稿する 3) アクション メソッドから成功または失敗メッセージを取得し、アラートとして表示する
それに対する解決策を提案してください。