2
这是怎么做到的?mvc服务器端验证jquery ajax发布请求
例如在我的模型,我有
[Required]
[DataType(DataType.EmailAddress)]
[RegularExpression(@"[a-z0-9._%+-][email protected][a-z0-9.-]+\.[a-z]{2,4}", ErrorMessage = "Incorrect email")]
public string EmailTo { get; set; }
我现在测试新的控制器是
[HttpPost]
public EmptyResult SendAgreementEmail(AgreementReportModel model)
{
bool t = ModelState.IsValid;
return new EmptyResult();
}
ModelState.IsValid是即使emailto为null有效。
和JS功能
function SendEmailWithJquery(offerID, agreementOfferID, customerID) {
var emailTo = document.getElementById('txtEmailTo').value;
var emailSubject = document.getElementById('txtEmailSubject').value;
var emailBody = document.getElementById('txtEmailBody').value;
var sendData = {
OfferID: offerID,
AgreementOfferID: agreementOfferID,
CustomerID: customerID,
EmailTo: emailTo,
EmailSubject: emailSubject,
EmailBody: emailBody
};
$.ajax({
url: "/Agreement/SendAgreementEmail",
type: "POST",
data: JSON.stringify(sendData),
dataType: 'json',
contentType: 'application/json',
success: function (data, textStatus, jqXHR) {
},
error: function (jqXHR, textStatus, errorThrown) {
}
});
};
是否有可能在所有的验证服务器端与JSON对象和强类型的视图控制器?
你为什么会想这样做验证服务器端,验证了'电子邮件id'需要什么,我认为它可能在客户端本身与正则表达式。因为服务器验证会为简单验证创建大量开销。 – dreamweiver
当然你是对的。但是我想在用户在浏览器中关闭脚本时处理这种情况。所以我想在这里双重检查 – Alexander
'[HttpPost] 公共字符串SendAgreementEmail(字符串jsonOfLog) { //执行验证 返回转换。的ToString(jsonOfLog); }',尝试这样的,里面温控功能执行您的验证ADN返回相应的消息或错误代码 – dreamweiver