0

jQuery の$.post()ヘルパー関数のプロパティとオプションを拡張することは可能ですか。

$.post()のように、にさらにプロパティを追加する必要がある場合もありますが、async, beforeSend, contentType, context, crossDomain, error, global, headers, ifModified, mimeType, timeout, etcを使用するのは嫌$.ajax()です$.post()


編集:ヘルパープラグイン/関数全体を上書き/上書きすることは可能ですか?

4

1 に答える 1

1

これは、独自の引数を追加する関数であり、get メソッドも更新します。しかし、ご覧のとおり、 $.ajax をラップしているだけです

(jQuery ソースから直接取得)

jQuery.each( [ "get", "post" ], function( i, method ) {
    jQuery[ method ] = function( url, data, callback, type ) {
        // shift arguments if data argument was omitted
        if ( jQuery.isFunction( data ) ) {
            type = type || callback;
            callback = data;
            data = undefined;
        }

        return jQuery.ajax({
            type: method,
            url: url,
            data: data,
            success: callback,
            dataType: type
        });
    };
});

編集 - 変更されたコードの例 すべての引数が必要です

jQuery.each( [ "myPost" ], function( i, method ) {
    jQuery[ method ] = function( url, data, callback, type, errorCallback ) {
        return jQuery.ajax({
            type: method,
            url: url,
            data: data,
            success: callback,
            dataType: type,
            error: errorCallback
        });
    };
});
于 2013-03-01T12:34:54.713 に答える