创建Javascript库只是为了减少重写的目的?

时间:2013-11-01 09:03:26

标签: javascript jquery ajax

如何创建一个简单的javascript库只是为了不一直写这个函数?

例如,对于Jquery的ajax,我必须使用以下内容:

$.ajax({ url: xxx,
         type: xxx,
         dataType: 'json',
         data: xxx,
         success : function(data){
         }
       })

我希望能够做一些像getajax(url,类型,成功函数)或postajax(url,类型,数据,成功函数)

这可能吗?我目前有两个问题 1.创建图书馆似乎有很多工作要做? (我很新,我不能把它们装在一起并放入.js并导入它吗?) 2.如何传递jquery ajax成功的功能? 3.我可以在库中包含库吗?

非常感谢,我是Javascript的新手,并且需要根据相同的格式完成很多类似的网站。

彼得

2 个答案:

答案 0 :(得分:5)

正如我在评论中提到的,jQuery已经为此提供了两种方法。

$.post(URL,data,callback);
$.get(URL,callback);

回答关于扩展jQuery以获得更多功能的第二个问题

$.extend({
    myPlugin: function (someVar) {
        // do something here, in this case we'll write to the console
        console.log(someVar);
    }
});

$.myPlugin("Some Text");

答案 1 :(得分:0)

我只是想回来回答我自己的问题,因为我之前没有得到我想要的帮助。使用jQuery post并获取Ajax函数,它不会处理错误。因此,只需创建另一个.js文件,并添加以下内容并将其包含在您的html中。

function getAjax(PageName, Action, Variables, dofunction) {

    $.ajax({
            url : PageName+'/'+Action+'?'+Variables,
            type : "GET",
            dataType : "json",
            success : dofunction,        
            error : function (xhr, ajaxOptions, thrownError) {
                    errLogin(xhr, ajaxOptions, thrownError);
                }
    });

}

function postAjax(PageName,Action,Variables,Data,dofunction){

    $.ajax({
            url : PageName+'/'+Action+'?'+Variables,
            type : "POST",
            dataType : "json",
            data : Data,
            success : dofunction,        
            error : function (xhr, ajaxOptions, thrownError) {
                    errLogin(xhr, ajaxOptions, thrownError);
                }
    });

}