function sb_ddd(url,title,bodytext) 
{
window.open("http://xxx.com/submit?phase=2&url="+url+"&title="+encodeURIComponent(title)+"&bodytext="+encodeURIComponent(bodytext));
void(0);
}如上面函数,如果title和bodytext字符串里头包含了单引号"'",这样传递过来就出现错误,问如何处理?

解决方案 »

  1.   

    你声明一个变量试试  
    var str1 = "'" + title + "'";
    var str2 = "'" + bodytext + "'";
    function sb_ddd(url,title,bodytext)  
    {
    window.open("http://xxx.com/submit?phase=2&url="+url+"&title="+encodeURIComponent(str1)+"&bodytext=encodeURIComponent(str2));
    void(0);
    }
      

  2.   

    如果有问题应该是需要转义,但是我觉得不是这个问题
    字符串中含有单引号是不需要转义的
    encodeURIComponent处理的字符串中含有单引号也不会出错
      

  3.   

    就是这样子:
    < a onclick="sb_dxxgg('参数1','参数2','参数3');">ddddddd</a>如上的调用,参数1,参数2,参数3 的字符串里头包含了'的符号和"的符号,
    所以造成了上面的a 的onclick函数不能用,就连参数的内容都显示在网页的文本里头了。该怎么解决啊?
      

  4.   

    < a onclick="sb_dxxgg('参数1','参数2','参数3');">ddddddd</a>
    不能有双引号,单引号没啥问题。因为你外面的是双引号
      

  5.   

    http://www.cnblogs.com/yzx99/archive/2008/08/08/1263416.html
    这个行啊