在jqGrid中显示自定义窗体上的错误和消息

时间:2011-11-19 11:24:46

标签: jqgrid

我正在尝试实现它以在对话框表单上显示消息,并询问并回答here。但是,虽然上面的示例在代码中使用了默认的editGridRow,但我通过JSON加载了自定义对话框表单。例如,返回的JSON错误/验证消息可能是:

{"CustomerName":{"isEmpty":"\u201cthis value is - not to be left empty.\u201d"}}

我需要能够将它们输出为“客户名称 - 此值不能为空” - 位于对话框表格的顶部。

我已尝试过ABCD中的解决方案,但我还无法自定义它们以适应我的方案。

我有一个像这样的函数调用:

function LaunchEditForm(dialog) 
    {
        $('form', dialog).submit(function () 
        {
            $.ajax({
                url: '/customer/update-customer/',
                type: this.method,
                reloadAfterSubmit: true,    
                data: $(this).serialize(),
                success: function (result) 
                {
                    if (result.success) 
                    {
                        console.log(result);
                       //can I call a function here to prepend modal form
                       //with success message? how please?
                    } 
                    else 
                    {
                        console.log(result);
                        // can I prepend the dialog to show model errors here?
                        //var errorDetail = jQuery.parseJSON(result.responseText);
                    }
                }


            });
            return false;
        });
    }

我尝试过使用 afterSubmit 之后:

afterSubmit: function (response, postdata) 
                    {
                        if (response.responseText == "Success") 
                        {
                            jQuery("#success").show();
                            jQuery("#success").html("Customer successfully updated");
                            jQuery("#success").fadeOut(6000);
                            return [true, response.responseText]
                        }
                        else 
                        {
                            return [false, response.responseText]
                        }
                    }

这还没有奏效 - 也许我把它放在了不同的范围

并尝试 errorTextFormat ,如下所示:

errorTextFormat: function (data) 
                    {
                        if (data.responseText.substr(0, 6) == "<html ") 
                        {
                            return jQuery(data.responseText).html();
                        }
                        else 
                        {
                            return "Status: '" + data.statusText + "'. Error code: " + data.status;
                        }
                    }

请帮助解决这个问题。我知道我需要一些能够成功解析JSON的函数,并希望能够呈现错误和消息Oleg described

0 个答案:

没有答案