(function ($) {
$.fn.sendAuditToHandler = function (options) {
var defaultSettings = {
'url': '../SentinelOperationsUI/GenericHandler.ashx'
};
var objectToSend = {};
var opts = $.extend(defaultSettings, options);
$(this).find('input[type=text], select').each(function (i, val) {
var objectKey = $(val).attr('class');
var objectValue = $(val).val();
objectToSend[objectKey] = objectValue;
});
objectToSend = JSON.stringify(objectToSend);
$.ajax({
url: opts.url,
data: { 'AuditObject': objectToSend },
success: function (data) {
}
});
return this;
};
})(jQuery);
我想使用的是在函数调用中使用ajax success函数。像
这样的东西sendAuditToHandler({ /* some options */ }, success: function() { //ajax success callback function }...
答案 0 :(得分:1)
将其作为普通参数传递,或作为现有选项哈希的一部分传递。
$.fn.sendAuditToHandler = function (options, onSuccess) {
// etc.
$.ajax({
url: opts.url,
data: { 'AuditObject': objectToSend },
success: onSuccess
});
然后当你打电话时:
sendAuditToHandler({ /* some options */ }, function(data) {
// Whatever you want.
alert("ohai");
});
或作为选项的一部分:
$.ajax({
url: opts.url,
data: { 'AuditObject': objectToSend },
success: opts.onSuccess
});
当你打电话时:
sendAuditToHandler({
url: "the url",
// other options, then the method.
onSuccess: function(data) {
// Whatever you want.
alert("ohai");
}
});
答案 1 :(得分:1)
您可以在ajax调用中调用您的成功函数
$.ajax({
url: opts.url,
data: { 'AuditObject': objectToSend },
success: function (data) {
options.success();
}
});