Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MVC 3 Razor-在Ajax请求中访问ViewData(Jquery,JavaScript)_Jquery_Ajax_Asp.net Mvc 3_Razor_Viewdata - Fatal编程技术网

MVC 3 Razor-在Ajax请求中访问ViewData(Jquery,JavaScript)

MVC 3 Razor-在Ajax请求中访问ViewData(Jquery,JavaScript),jquery,ajax,asp.net-mvc-3,razor,viewdata,Jquery,Ajax,Asp.net Mvc 3,Razor,Viewdata,我正在编写一些代码,用户可以在提交表单之前检查数据库中是否已经存在用户名。这是通过onkeyup事件处理程序实现的,它从文本框中获取值并将其传递给ajax请求,ajax请求使用字符串参数调用我的ActionResult方法。我的SQL逻辑工作正常,我收到一个值,表示已经存在或不存在 我遇到的问题来自我的控制器,我想返回值。在Jquery Ajax请求的成功部分,我试图访问我的ViewData[索引名],但我的警报显示一个空字符串 Javascript代码: C控制器代码: 我做错了什么?欢迎提出

我正在编写一些代码,用户可以在提交表单之前检查数据库中是否已经存在用户名。这是通过onkeyup事件处理程序实现的,它从文本框中获取值并将其传递给ajax请求,ajax请求使用字符串参数调用我的ActionResult方法。我的SQL逻辑工作正常,我收到一个值,表示已经存在或不存在

我遇到的问题来自我的控制器,我想返回值。在Jquery Ajax请求的成功部分,我试图访问我的ViewData[索引名],但我的警报显示一个空字符串

Javascript代码:

C控制器代码:

我做错了什么?欢迎提出任何建议。

尝试以下方法:

更改:

ViewData["Username"] = output;
为此:

ViewData["UserName"] = output;
试试这个:

更改:

ViewData["Username"] = output;
为此:

ViewData["UserName"] = output;
ASP.NET:

JS:

ASP.NET:

JS:


成功了!我确实需要稍微更改javascript。有一个输入错误,用户名不全是小写,但除此之外,它工作得非常好。谢谢成功了!我确实需要稍微更改javascript。有一个输入错误,用户名不全是小写,但除此之外,它工作得非常好。谢谢
public JsonResult UsernameSearch(string username)
{
            string output = DAL.usernameSearch(username);

            return Json(new
            {
                Html = PartialView("~/Views/Partial/_txtUsernameSearch.cshtml"),
                Username = output
            });
}
$.ajax({
            url: '@Url.Action("UsernameSearch", "UserManager")',
            type: "POST",
            async: true,
            dataType: "json",
            data: "username=" + filters.username,
            success: function (data) {

                var html = data.Html;
                var str = data.Username;
                alert(str);

                $('#txtUsernameExists').val(str);
                configureGui();
                jQueryTableStyling();
            },
            error: function (data) {

            }
        });