PUT Ajax请求

Dav*_*vid 10 javascript ajax jquery

我是新手做Ajax请求并将以下Pastie放在一起.第107行是我的$ .PUT并且在firebug中抛出一个错误,$ .PUT不是一个函数.至于ajax请求,我知道这是错误的,但是我很遗憾在成功函数addCell中我需要做什么.我对此有正确的解决方法吗?

编辑

function _ajax_request(url, data, callback, type, method) {
    return jQuery.ajax({
        type: 'PUT',
        url: "slot_days/show",
        data: data,
        success: function(data)
        {
callback($.put('/slot_days/show', { '/slot_days/': 'slot_times' }, function(result) 

            {

            });
          )
        }
    });
}

jQuery.extend({
    put: function(url, data, callback, type) {
        return _ajax_request(url, data, callback, type, 'PUT');
}});  
Run Code Online (Sandbox Code Playgroud)

Dar*_*rov 23

你在这里有一个错误(该success函数必须是匿名的):

return 
    jQuery.ajax({
        type: 'PUT',
        url: 'slot_days/show',
        data: data,
        success: function addCell() {

        }
    });
Run Code Online (Sandbox Code Playgroud)

应该:

function _ajax_request(url, data, callback, method) {
    return jQuery.ajax({
        url: url,
        type: method,
        data: data,
        success: callback
    });
}
Run Code Online (Sandbox Code Playgroud)

并扩展jQuery:

jQuery.extend({
    put: function(url, data, callback) {
        return _ajax_request(url, data, callback, 'PUT');
}});  
Run Code Online (Sandbox Code Playgroud)

和示例用法示例:

$.put('/url', { 'foo': 'bar' }, function(result) {
    // do something with the results of the AJAX call
});
Run Code Online (Sandbox Code Playgroud)