如何在jquery中的短手AJAX中添加另一个dataType?

时间:2015-10-27 03:26:26

标签: jquery ajax

是否可以在jquery中使用简写方法POST在AJAX中添加另一个新的数据类型?也许有人在jquery的专家可以帮助我。

这是我的AJAX。

     *
    * *
   *   *
  *     *
 *       *
* * * * * *

我想将其转换为简写;

$.ajax({
   url: myUrl,
   type: 'POST',
   data: formData,
   cache: false,
   contentType: false,
   processData: false,
   success: function(data){
          console.log(data);
   }
});

但上面的代码无效。

1 个答案:

答案 0 :(得分:0)

您可以创建自己的函数并在那里定义任何逻辑:

$.superCustomAjax = function(settings) {
    settings.contentType = settings.contentType || false;
    settings.cache = settings.cache || false;
    settings.processData = settings.processData || false;

    return jQuery.ajax(settings);
});

$.superCustomAjax({
    url: "./url.php",
    data: data,
    cache: true // overwrite default "false" value
});

或更多$.post - 样式如下:

$.superCustomAjax = function(url, data, settings) {
    settings.url = url;
    settings.data = data;

    settings.type = settings.type || "POST";
    settings.contentType = settings.contentType || false;
    settings.cache = settings.cache || false;
    settings.processData = settings.processData || false;

    return jQuery.ajax(settings);
});

$.superCustomAjax("./url.php", data, {
    cache: true // overwrite default "false" value
});

在这两个示例中,cache值将被覆盖为true。但是,根据您的自定义默认值,contentTypeprocessData将为false