将encodeuricomponent应用于全局应用程序中的所有ajax调用

时间:2014-09-17 15:32:22

标签: javascript jquery ajax json encodeuricomponent

我在我的应用程序的几个地方都有这样的ajax调用。

$.ajax({
            type: 'POST',
            url: url,
            data: Json.stringify(Values),
            dataType: 'json'
        });

对于这些,我想将encodeURIComponent添加到如下发送的数据:

$.ajax({
            type: 'POST',
            url: url,
            data: encodeURIComponent(Json.stringify(Values)),
            dataType: 'json'
        });

有没有什么方法可以在全球范围内进行此操作而无需在任何地方手动编辑它?

1 个答案:

答案 0 :(得分:0)

创建自己的功能。

var myAjax = function (options) {
  if (typeof options.data !== "undefined") {
    options.data = encodeURIComponent(options.data);
  }
  return $.ajax(options);
};

然后在你的代码中替换:

$.ajax({ type: 'POST', url: url, data: Json.stringify(Values), dataType: 'json' });

使用:

myAjax({ type: 'POST', url: url, data: Json.stringify(Values), dataType: 'json' });

无论你做什么,都不要打补丁!