Str.replace导致%2520而不是想要的%20

str.replace causes %2520 instead of the wanted %20

本文关键字:replace 导致 %2520 Str      更新时间:2023-09-26

我使用下面的代码将输入中的空格替换为文字%20,以便URL包含%20而不是+

  <script>
    $(document).ready(function(){
      $('.form-horizontal').submit(function(){
        var str = $('#nickname').val();
        var res = str.replace(" ", "%20");
        $('#nickname').val(res );
      });
    });
  </script>

但我最终与init_user=John%2520Doe而不是init_user=John%20Doe

我没有其他的编码,这是唯一的脚本实例。

您可以尝试使用内置的encodeURI(string)函数(使用var encodedString = encodeURI(baseString);)。

或者有什么原因为什么在这个特定的情况下这不是你的选择?