簡體   English   中英

ASP.NET MVC遠程驗證:返回布爾值和字符串

[英]ASP.NET MVC Remote Validation: Return boolean and string

我一直在嘗試對用戶名登錄訪問使用ASP.NET MVC遠程驗證來返回字符串和布爾值。 如果我只返回一個字符串,它將假定為布爾值false,而不允許用戶提交表單。 有什么辦法可以同時傳遞true和諸如“ [USERNAME]可用”的字符串?

當前方法:

public JsonResult isUserAvailable(string username)
    {
        if (Membership.GetUser(username) == null)
        {
            return Json(String.Format(CultureInfo.InvariantCulture, "<strong style='color: green;'>{0} is available!</strong>", 
                username), JsonRequestBehavior.AllowGet);
        }

        else
        {
            return Json(false, JsonRequestBehavior.AllowGet);
        }
    }

使用Json對象將數據發送回去,像這樣修改您的else塊,並在客戶端上使用JSON

 else
    {
       var data = new 
       { 
         result = false, 
         userName = username 
       };
 return Json(data, JsonRequestBehavior.AllowGet);
   }

正如@Furqan所建議的,您返回的數據不是Json,而是Html。

我建議您返回一個Json對象或其他ActionResult,也許是ContentResult 這篇博客文章很好地解釋了不同的ActionResult類型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM