Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jqueryajax调用,哪种最好?_Jquery_Ajax - Fatal编程技术网

jqueryajax调用,哪种最好?

jqueryajax调用,哪种最好?,jquery,ajax,Jquery,Ajax,我在web上找到了关于jQueryAjax请求的信息 load():将一段html加载到容器DOM中 $.getJSON():使用GET方法加载JSON $.getScript():加载JavaScript $.get():如果要进行get调用并广泛使用响应,请使用此选项 $.post():如果要进行post调用,并且不想将响应加载到某个容器DOM,请使用此选项 $.ajax():如果需要在XHR失败时执行某些操作,或者需要动态指定ajax选项(例如cache:true),请使用此选项 但它并没

我在web上找到了关于jQueryAjax请求的信息

load()
:将一段html加载到容器DOM中

$.getJSON()
:使用GET方法加载JSON

$.getScript()
:加载JavaScript

$.get()
:如果要进行get调用并广泛使用响应,请使用此选项

$.post()
:如果要进行post调用,并且不想将响应加载到某个容器DOM,请使用此选项

$.ajax()
:如果需要在XHR失败时执行某些操作,或者需要动态指定ajax选项(例如cache:true),请使用此选项

但它并没有说什么关于性能的问题,这是最好的使用它做什么。从验证中选择哪一个最适合?哪个速度最好,诸如此类

我以前从未使用过jqueryajax,我想知道在使用jqueryajax请求的时候,你们中一些经验更丰富的程序员认为哪些最适合你们的需要


什么是JSON?我知道它被称为javascript对象表示法,但它意味着什么?

没有更好或更糟的。使用适合情况的工具。

没有更好或更糟的。使用适合这种情况的工具。

它们都只是带有特定参数子集的
$.ajax()
的缩写。没有一个比另一个更好,适合您的情况的就是“最好的”。

它们都只是带有特定参数子集的
$.ajax()
的缩写。没有一个比另一个更好,适合您的情况的是“最好的”。

我建议使用$.ajax()以提高灵活性,它为您提供了更多的选择

$.ajax()函数是jQuery发送的所有ajax请求的基础。通常不需要直接调用此函数,因为有几种更高级别的替代方法,如$.get()和.load(),它们更易于使用。但是,如果需要不太常见的选项,$.ajax()可以更灵活地使用。

我建议使用$.ajax()以提高灵活性,并提供更多选项


$.ajax()函数是jQuery发送的所有ajax请求的基础。通常不需要直接调用此函数,因为有几种更高级别的替代方法,如$.get()和.load(),它们更易于使用。但是,如果需要不太常见的选项,$.ajax()可以更灵活地使用。

如果查看文档,
get
在封面下使用
ajax
。再看看这个


它可以为您节省一些输入。

如果您查看文档,
get
在封面下使用
ajax
。再看看这个


它可以为您节省一些输入。

就像kingjiv所说的,每一个都通过
$.ajax
方法

load()
设置要获取的类型/post在后台执行其他操作,以确保在所选元素上填充响应,然后调用
$.ajax
。下面是代码

load: function( url, params, callback ) {
    if ( typeof url !== "string" && _load ) {
        return _load.apply( this, arguments );

    // Don't do a request if no elements are being requested
    } else if ( !this.length ) {
        return this;
    }

    var off = url.indexOf( " " );
    if ( off >= 0 ) {
        var selector = url.slice( off, url.length );
        url = url.slice( 0, off );
    }

    // Default to a GET request
    var type = "GET";

    // If the second parameter was provided
    if ( params ) {
        // If it's a function
        if ( jQuery.isFunction( params ) ) {
            // We assume that it's the callback
            callback = params;
            params = undefined;

        // Otherwise, build a param string
        } else if ( typeof params === "object" ) {
            params = jQuery.param( params, jQuery.ajaxSettings.traditional );
            type = "POST";
        }
    } // after this is calls $.ajax and passes in the parameters 

$.getJSON():这只调用
$.get
数据类型设置为
json
$。依次调用get
$。ajax

getJSON: function( url, data, callback ) {
        return jQuery.get( url, data, callback, "json" );
    }

$.getScript():您猜对了,只需调用
$.get
并将
数据类型作为
脚本
传递

getScript: function( url, callback ) {
        return jQuery.get( url, undefined, callback, "script" );
    },

$.get()和$.post():这两个方法也调用$.ajax

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
        });
    };
});

总之,使用任何适合目的的东西,这取决于你打算做什么。性能应该是相同的,因为您已经看到它们都经过
$。ajax

正如kingjiv所说,每一个都经过
$.ajax
方法

load()
设置要获取的类型/post在后台执行其他操作,以确保在所选元素上填充响应,然后调用
$.ajax
。下面是代码

load: function( url, params, callback ) {
    if ( typeof url !== "string" && _load ) {
        return _load.apply( this, arguments );

    // Don't do a request if no elements are being requested
    } else if ( !this.length ) {
        return this;
    }

    var off = url.indexOf( " " );
    if ( off >= 0 ) {
        var selector = url.slice( off, url.length );
        url = url.slice( 0, off );
    }

    // Default to a GET request
    var type = "GET";

    // If the second parameter was provided
    if ( params ) {
        // If it's a function
        if ( jQuery.isFunction( params ) ) {
            // We assume that it's the callback
            callback = params;
            params = undefined;

        // Otherwise, build a param string
        } else if ( typeof params === "object" ) {
            params = jQuery.param( params, jQuery.ajaxSettings.traditional );
            type = "POST";
        }
    } // after this is calls $.ajax and passes in the parameters 

$.getJSON():这只调用
$.get
数据类型设置为
json
$。依次调用get
$。ajax

getJSON: function( url, data, callback ) {
        return jQuery.get( url, data, callback, "json" );
    }

$.getScript():您猜对了,只需调用
$.get
并将
数据类型作为
脚本
传递

getScript: function( url, callback ) {
        return jQuery.get( url, undefined, callback, "script" );
    },

$.get()和$.post():这两个方法也调用$.ajax

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
        });
    };
});

总之,使用任何适合目的的东西,这取决于你打算做什么。性能应该是相同的,因为您已经看到它们都经过了
$。ajax

所有这些都只是
$的快捷方式。ajax
,设置一些默认选项。选择一个对你的用例来说是足够的。有相当多的重叠(有几个基本上是重载)。请改进你的问题,因为它目前是模糊的,无法客观地回答。我认为这个问题不值得-1…我也没有,因为我已经尝试在网上研究过,关于区分不同类型和不同类型的用途的任何东西。但是人就是人:)我认为这更适合于此所有这些都只是
$的快捷方式。ajax
,设置一些默认选项。选择一个对你的用例来说是足够的。有相当多的重叠(有几个基本上是重载)。请改进你的问题,因为它目前是模糊的,无法客观地回答。我认为这个问题不值得-1…我也没有,因为我已经尝试在网上研究过,关于区分不同类型和不同类型的用途的任何东西。但人终将是人:)我相信这更合适。谢谢你@谢谢你@谢谢,这是我想要的,一个详细的解释,很棒的东西。谢谢,这是我想要的,一个详细的解释,很棒的东西。