替换输入值

时间:2010-10-09 16:03:47

标签: jquery

是否有更好的方法将字符串替换为&在textarea中打破脚本,因为它认为它是另一个&参数β

function doRequest(){
var str = $('textarea#tr').val();
$.ajax({
   type: "POST",
   url: "index.php?sd=t",
   data: "txt="+str.replace(/&/g, "and"),
   success: function(){
        $("div").css('color','red');
        $("div").text('Saved');
        $("div").fadeTo(800,1);
        $("div").animate({backgroundColor:'#000000'}, 200);
        $("div").animate({backgroundColor:'#FFFF90'}, 400);
        stre = false;
   }
 });
}

2 个答案:

答案 0 :(得分:4)

您可以将数据作为对象传递,让jQuery对其进行序列化,如下所示:

data: {txt: str},

请注意,这不会出现“和”这个词,它会逃脱它,留下%26

What actually happens under the covers正在调用encodeURIComponent(),如下所示:

data: "txt="+encodeURIComponent(str),

我会选择第一种方法,我只是展示下面发生的事情,以便更好地理解编码的工作原理。

答案 1 :(得分:1)

data: { txt: $('textarea#tr').val() }