我正在开发一个“webform”,它有三个按钮取消,保存,保存和电子邮件。 使用取消和保存按钮,代码运行正常。但在保存和电子邮件按钮我正在制作一个“webmethod”将表单值保存到另一个页面和webMethod内部,我想检查一下,如果单击“保存和电子邮件”按钮,则调用另一个方法名称为“发送电子邮件”。
任何建议如何在web方法中仅为“保存和发送电子邮件”按钮调用另一种方法。
<input id="SaveEntry" type="button" class="btn btn-primary" value="Save" />
<input id="ApprovalButton" type="button" class="btn btn-primary" value="Save and Email" />
Ajax电话:
$("#ApprovalButton").click(function () {
$.ajax({
type: "POST",
url: "checking.aspx/AddCashBook",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify(""),
success: function (msg) {
$('#AddEntry').modal('toggle')
}
});
答案 0 :(得分:1)
我假设您从两个按钮调用相同的webmethod
。您需要将参数sendEmail
传递给webmethod
,它会告诉您是否发送电子邮件。
$("#ApprovalButton").click(function () {
$.ajax({
type: "POST",
url: "checking.aspx/AddCashBook",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify({ sendEmail: true }),
success: function (msg) {
$('#AddEntry').modal('toggle')
}
});
在网络方法中你会这样做
[WebMethod]
public static string UpdateDB(bool sendEmail)
{
if(sendEmail)
//call function to send email.
}
现在,您将从ajax的第二个按钮false
到webmethod
调用相同的方法。
答案 1 :(得分:0)
在你的守则背后......
//Setup a string that will call a button click event
var BtnSendAndSaveClick = "document.getElementById('"
+ ApprovalButton.ClientID.ToString() + "')"
+ ".click();";
//Call the other button
SaveEntry.Attributes.Add("OnClick", BtnSendAndSaveClick );