ajax返回布尔,Jquery Ajax – 返回布尔?

假设这是ASP.Net MVC,你应该从你的动作中返回一个ActionResult(或者至少是从它派生的东西).下一个问题是返回true将意味着将在bool值上调用toString(),从而导致字符串“True”或“False”.请注意,这两个在javascript中等同于true.相反,返回包含结果标志的JSON.

在jQuery代码中你也设置了async:false,这是一个非常糟糕的做法.事实上,如果您检查控制台,您会看到浏览器有关其使用的警告.您应该删除该属性,以便异步进行AJAX请求.您还在ajax()调用中将dataType设置为JSON,但实际上是返回一个字符串.试试这个:

function SendPreview() {

var value = CKEDITOR.instances['Source'].getData();

var model = { EmailBody: value.toString(),success: function (data) {

if (data.emailSent) { // note the object parameter has changed

alert("Message Sent");

} else {

alert("Message Not Sent,Please check details");

}

}

});

}

[HttpPost]

[ValidateInput(false)]

public ActionResult SendPreviewEmail(string model)

{

var e = new EmailPreview();

var result = false;

JavaScriptSerializer objJavascript = new JavaScriptSerializer();

e = objJavascript.Deserialize(model);

if (!string.IsNullOrEmpty(e.EmailTo) && !string.IsNullOrEmpty(e.EmailSubject) && !string.IsNullOrEmpty(e.EmailBody))

{

if (IsValidEmail(e.EmailTo))

{

_mailService.SendMail(account.Email,true);

result = true;

}

}

return Json(new { emailSent = result });

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值