jQuery通过ajax提交js对象时,将为null或者是无用的属性删除,或者是设置为undefined,可以避免请求失败报400错误。


EasyUI组件代码,提交到SpringMVC,用对象接收。

function onEndEdit(index, row){
    var ed = $(this).datagrid('getEditor', {
        index: index,
        field: 'attributeName'
    });
    
    //删除值为null的属性
    for (var r in row) {
        if (row[r] == null) {
            row[r] = undefined;
        }
    }
    
    jQuery.ajax({
        url: '/business/prodCat/addProdTypeAttr',
        type: 'post',
        data: row,
        dataType: 'json',
        success: function(data) {
            $('#dg').datagrid('reload');

            console.log(data);
        },
        error: function(data) {
            alert("error");
            console.log(data);
        }
    });
}