我应该如何将这个Prototype移植到JQuery?

时间:2010-03-29 16:02:44

标签: javascript jquery prototypejs

目前有这个原型代码执行PUT:

new Ajax.Request(someUrl, {
    method: 'put',
    parameters: { 'foo': bar },
    onSuccess: function(response) { } .bind(this)
});

我找到了this post但该解决方案使用了RoR支持的额外参数,但是我的目标是ASP.NET后端。

我搜索了一下,发现并非所有浏览器都支持PUT操作,所以显然在某些浏览器中可能会失败?这已经在生产中了,所以我认为直接端口现在没问题了。

顺便说一句,onSuccess函数中绑定(this)的处理是什么?

2 个答案:

答案 0 :(得分:5)

.bind(this)返回一个包装函数,该函数在传递给.bind的参数的上下文中调用原始函数。

您可以使用$.ajax

移植代码
$.ajax({
    url: someUrl,
    type: 'put',
    data: { foo: bar},
    context: this,        //Calls callback in context.
    success: function() { }
});

答案 1 :(得分:0)

putdelete请求映射到jQuery $.ajax函数(here)。

$.ajax(
    url: someUrl,
    type: 'put',
    data: { /* your key-value data pairs here */ },
    success: function() {
        alert('put request succeeded!');
    }
);