未终止的字符串文字 - Javascript

Unterminated String literal - Javascript

本文关键字:Javascript 文字 字符串 终止      更新时间:2023-09-26

我需要将一个参数传递给Javascript函数,该参数可能包含特殊字符,如%。如何转义这些字符,以便将它们正确传递给 JS?这些参数是动态生成的,因此我无法识别每个字符并在那里放置一个转义字符。

这是JSP部分...

<a href="javascript:redirect('<bean:write property="appId" name="appl"/>','<bean:write property="propId" name="appl"/>','<bean:write property="url" name="appl"/>');">
                                click this
                            </a>

这是生成的部分...

<a href="javascript:redirect('A-0', '07', 'http://localhost:9083/xxxxx/aaa/bbbb/ccccc/redirectApply.do?token=9BsPtrGQPEYWv6dvbP9hsX9skeghTHnonkKZtsqrkZXSf7gKqKRYdo2i6CpcLOWxroqrWEDhyosk%0D%0A1aD1tQ0OBHHfsVjPKb%2B1kSFzjCg8lKyoGropGWc%2Bc7oCT8%2BYItwX');">

字符"%"似乎导致了问题。我查看了Firefox中的错误控制台,它显示字符串最高为****WEDhyosk,并说字符串未终止.....

这个问题与我之前发布的问题有关,但由于我当时对这个问题没有清晰的了解,所以我正在转发,

尝试这样的事情:

String encodedurl = URLEncoder.encode("www.google.com","UTF-8");

然后,浏览器应在单击链接时自动解码字符串。