У меня есть кнопка: Включить электронную почту и флажок (который не отмечен) на стороне этой кнопки.
Когда я нажимаю кнопку Turn email on
, она должна вызывать метод действия контроллера, где мне нужно написать SP для обновления таблицы электронной почты.
В таблице Email_ON_OFF_T есть одно поле: isemailon_off (тип int) .i в нее вставлено значение 0.
Таким образом, текст кнопки Turn email on
станет turn email off
, и флажок станет установленным.
Я пробовал следующий код:
<div class="col-md-8 form-group" style="text-align:right;">
<input type="button" value="Turn Email ON" class="btn btn-success" id="btnturnemailonoff" />
</div>
<div class="col-md-2 form-group">
<input type="checkbox" id="Chkemailonoff" />
</div>
Код Ajax для вызова кнопки:
$(document).ready(function () {
$('#btnturnemailonoff').on('click', function () {
//var prices = [];
//$('#Chkemailonoff').each(function () {
// prices.push($(this).attr("value"));
//});
var checked = !$(this).data('checked');
$("#Chkemailonoff").prop('checked', checked);
$(this).val(checked ? 'Turn Email Off' : 'Turn Email on')
$(this).data('checked', checked);
debugger;
var url = '@Url.Action("CheckEmail", "BillingDetails")';
$.ajax({
url: url,
type: "POST",
data: { checkemails: checked },
dataType: "json",
// traditional: true,
success: function () {
alert("ajax request to server succeed");
}
});
});
});
Из Ajax я передаю данные (представление) в метод действия Controllers.
[HttpPost]
public ActionResult CheckEmail(string checkemails)
{
//how to call Stored Procedure
return new JsonResult { };
}
Я написал ниже SP:
ALTER procedure [dbo].[Sp_Email_on_off]
@checkemails varchar(10)
As
Begin
if(@checkemails='false')
Update Email_ON_OFF_T set isEmailON_OFF=1
else
Update Email_ON_OFF_T set isEmailON_OFF=0
End
То, что меня поразило, это Stored procedure.How to write and execute Sp in Controllers action Method.
Это моя первая задача в MVC, которую я пытался выполнить. Я новичок в Mvc.
Как этого добиться с помощью Mvc?
Любая помощь будет высоко оценена.