Please extend a new method to achieve this functionality.
$.extend($.fn.form.methods, {
load2: function(jq, data){
return jq.each(function(){
var target = this;
var opts = $(target).data('form').options;
if (typeof data == 'string'){
var param = {};
if (opts.onBeforeLoad.call(target, param) == false) return;
$.ajax({
url: data,
data: param,
dataType: 'json',
success: function(data){
_load(data);
},
error: function(){
opts.onLoadError.apply(target, arguments);
}
});
} else {
_load(data);
}
function _load(data){
if ($.isArray(data)){
data = data[0];
}
$(target).form('load', data);
}
})
}
})
Usage example:
$('#ff').form('load2', 'get_data.php');
$('#ff').form('load2', [{name: 'xxx}]);
$('#ff').form('load2', {name: 'xxx'});