Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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
Json数据为空_Json_Ajax_Asp.net Mvc - Fatal编程技术网

Json数据为空

Json数据为空,json,ajax,asp.net-mvc,Json,Ajax,Asp.net Mvc,我想将json数据从视图发送到asp.net mvc中的控制器。但是数据是空的 $(document).ready(function () { $('#btnSignUp').click(function () { var email = ('#txtEmail').val(); var username = ('#txtUsername').val() var password= ('#txtSifre').val();

我想将json数据从视图发送到asp.net mvc中的控制器。但是数据是空的

 $(document).ready(function () {
    $('#btnSignUp').click(function () {

        var email = ('#txtEmail').val();
        var username = ('#txtUsername').val()
        var password= ('#txtSifre').val();



        $.ajax({
            url: '/User/SignUp',
            data: { email: email, username: username, password: password},
            datatype: 'Json',
            type: 'Post'

        }).done(function () {
            $('#success').show(500);
        })

    })
})
控制器代码:数据:电子邮件、用户名、密码。 数据为空。 调试结果:email=null,username=null,password=null

 public ActionResult SignUp(string email,string username,string password)
    {
        var data = db.Users.Where(x => x.Nick == username || x.Email==email).SingleOrDefault();
        Users user= new Users();
        if (data== null)
        {
            ModelState.AddModelError("", "Username is valid");
        }
        else
        {
            uye.Nick = username;
            uye.Email = email;
            uye.Password= password;

            db.Users.Add(user);
            db.SaveChanges();
        }

        return RedirectToAction("HomePage","Home");
    }

您有
数据类型:'Json',
,但您的方法不返回Json,因此会抛出错误。您的方法具有
RedirectToAction()
但ajax调用无法重定向(ajax的全部目的是保持在同一页面上)请尝试
JSON.stringfy({email:email,username:username,password:password})
@ElmerDantas,通常只有当contentType设置为JSON时才需要它,但是,否则jQuery只会将其序列化为正常形式的字段,MVC应该非常乐意接受这些字段。@Elmerdanta在我看来,提出更多的问题要比提出一些基于证据不足的建议更好,特别是当我们知道这种情况下的正常行为时,如我所述。试试
$(“#btnSignUp”)。单击(函数(e){e.preventDefault()
并将
$
添加到
(“#txtEmail”).val()
之前,就像这样
$(“#txtEmail”).val()
您有
数据类型:'Json',
,但您的方法不返回Json,因此会引发错误。您的方法有
重定向到Action()
,但ajax调用无法重定向(ajax的全部要点是保持在同一页面上)尝试
JSON.stringfy({email:email,username:username,password:password})
@ElmerDantas通常只有在contentType设置为JSON时才需要,否则jQuery只会将其序列化为普通表单字段,MVC应该非常乐意接受这些字段。@ElmerDantas最好在IMO中提出更多问题,而不是在证据不足的情况下提出建议,特别是当我们知道在这种情况下,如我所述。尝试
$('#btnSignUp')。单击(函数(e){e.preventDefault()
,然后在
('#txtEmail').val()之前添加
$
,就像这样
$('#txtEmail').val()