使用从AjaxSubmit返回的数据



我正在尝试访问从ajaxSubmit请求返回的数据。

 $("#searchbutton").on('click', function() {
            $("#searchform").ajaxSubmit({
                success: function(data) {
                    populate('#registrationform', data);
                },
                resetForm: true
            });
        });

返回的数据没有被我的填充函数识别,如果我使用原始数据,

 $("#searchbutton").on('click', function() {
            $("#searchform").ajaxSubmit({
                success: function(data) {
                    populate('#registrationform', {studentId: 1, firstName: 'Kay'});
                },
                resetForm: true
            });
        });

我的populate函数起作用。你知道为什么返回的数据没有被识别吗?

我的猜测是,数据实际上是以字符串的形式返回的,而不是JavaScript对象。如果你用console.log(data)进行检查,这个区别很容易被忽略

查看success方法和dataType选项的文档,您的服务器的响应很可能是一个简单的String。尝试显式设置dataType: "json",看看结果如何。或者反序列化为具有JSON.parse()的对象。

像一样使用它

$("#searchbutton").on('click', function() {
     $("#searchform").ajaxSubmit({
         success: function(data) {// data should be return as json
            populate('#registrationform',{studentId: data.id, firstName: data.name});
         },
         resetForm: true
     });
});

最新更新