发送带有ajax的html文本,'&'上的问题?

alb*_*anx 1 html entities

我使用jquery.ajax来保存富文本区域.

corr=some.innerHTML(); /* corr='< some text <' */
$.ajax({
    type:"POST", url:"flatplan/save_corr.php",
    data:"corr="+corr+"&IDFS="+IDFILES,
    success: function(msg){

    },
    error:function(x,e){
        ajax_errors(x,e);
    }
});
Run Code Online (Sandbox Code Playgroud)

问题是corr变量可以在里面包含'&'字符,它会发送更多的params给出问题.有没有办法用ajax html文本发布?

ken*_*ytm 5

你可以(也应该)逃避查询字符串组件encodeURIComponent.

data: "corr=" + encodeURIComponent(corr) + "&IDFS=" + encodeURIComponent(IDFILES),
Run Code Online (Sandbox Code Playgroud)

编辑:jQuery可以接受数据字段中的Object.你应该使用

data: ({
  corr: corr,
  IDFS: IDFILES
}),
Run Code Online (Sandbox Code Playgroud)

这样jQuery就可以自动编码查询字符串.