如何在ajax jquery调用中传递NULL值?

时间:2011-11-29 12:45:06

标签: jquery

执行Ajax调用时有没有办法处理空值?

 $.ajax({
            type: "POST",
            url: "Login.aspx/SaveFacebookAutoSignUp",
            data: "{ 'Name':'" + rows[0].name + "', 'EmailId': '" + rows[0].email + "'}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (msg) {
                alert("You have successfully sign in.");

            }
        });

如果没有从其他页面获取,这是在我的DB for EmailId中保存“null”值吗?

我想在DB中没有任何值时保存“NULL”(DB默认为NULL允许)?

这样做的方法是什么?

3 个答案:

答案 0 :(得分:2)

您可以使用 undefined 代替 null ,如下例所示:

data: {
  valueTrue : true,
  valueFalse: false,
  valueNull : undefined
}

答案 1 :(得分:0)

传递由引号括起的值null NOT

{
    "id": "1234",
    "nullableValue": null
}

我建议不要手动编写你的json字符串,创建一个对象然后使用函数调用将它转换为json。在某些情况下,您可以将对象传递给ajax来电。

答案 2 :(得分:0)

您需要在C#Coding Level中执行此操作。 只需使用以下方法

创建参数
public static SqlParameter GetSqlParameter(string StrParameterName,object ObjValue,SqlDbType Dbtype)
    {
        SqlParameter ObjParameter = new SqlParameter();




        ObjParameter.ParameterName = StrParameterName;

        if (ObjValue is DateTime)
            ObjParameter.IsNullable = (DateTime)ObjValue == new DateTime() ? true : false;
        else
            ObjParameter.IsNullable = ObjValue == null ? true : false;

        if (!ObjParameter.IsNullable)
            ObjParameter.Value = ObjValue;
        else
            ObjParameter.Value = DBNull.Value;

        ObjParameter.SqlDbType = Dbtype;

        return ObjParameter;

    }

将此方法放在任何Helper类中,并在需要时调用它。