![](/img/trans.png)
[英]Angularjs - Displaying data using $http get from remote server
[英]How to prevent remote error message from displaying when using JustValidate remote option?
我正在使用 JustValidate 庫( https://github.com/horprogs/Just-validate )進行表單驗證。 它在客戶端完美運行,但在執行遠程驗證時似乎無法正常運行。 例如:如果我們有一個輸入字段“電子郵件”,我們 Javascript 中的遠程驗證將如下面的代碼所示。
rules: {
email: {
email: true,
remote: {
url: '@Url.Action("Validate", "ActivityTypes")',
sendParam: 'email',
successAnswer: 'OK',
method: 'GET'
}
}
}
每次用戶在電子郵件輸入中輸入內容時,都會將值發送到服務器並檢查它是否正常。 問題是你總是得到一個好的響應。 每次您收到該響應時,都會顯示輸入的錯誤消息(即使輸入已正確填寫)。 我的 controller 動作如下所示:
public async Task<IActionResult> Validate(ActivityType values)
{
var activityType = await _context.ActivityType
.FirstOrDefaultAsync(m => m.Name == values.Name);
if (activityType == null)
{
return NotFound();
}
return Ok();
}
我已經嘗試在 controller 中從一個動作重定向到另一個動作,返回 NotFound() 但仍然收到 Ok 響應,並且錯誤消息再次出現。 在 JustValidate 庫的 GitHub 頁面上嘗試演示時,我注意到輸入總是顯示輸入“電子郵件”的錯誤消息,即使它們不應該顯示。 有沒有人找到解決方法? 我已經在我所有表單的 80% 上使用了這個庫,並且不想為其他一些庫更改它。
由於您提到了successAnswer: 'OK'
您需要將響應作為Content
返回。 像這樣。
[HttpGet]
[Route("check-exists")]
public IActionResult CheckExists(string email)
{
return email == "anuraj@example.com" ? Content("Not Okay") : Content("OK");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.