使用 js 或 jQuery 强制空格从 HTML 输入字段转换为 %20 [重复]

Posted

技术标签:

【中文标题】使用 js 或 jQuery 强制空格从 HTML 输入字段转换为 %20 [重复]【英文标题】:Force spaces to convert to %20 from HTML input field using js or jQuery [duplicate] 【发布时间】:2018-03-29 15:59:05 【问题描述】:

您好,我的网站上有一个输入字段,人们可以输入搜索词。

我正在获取用户输入的值并将其吐出到一个 url 字符串中。

jQuery("#searchButton").click(function()
    var simpleSearchTermLocal = jQuery('#searchField').val();
    var urlString = "www.mysite.com/" + simpleSearchTermLocal;
    alert(urlString);
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="searchField" />
<button id="searchButton">search</button>

因此,当有人在搜索字段中输入“ABC”之类的内容时,变量urlString 的值变为www.mysite.com/ABC,这很好。

但是,当在输入字段中输入空格时,例如“ABC 123”,urlString 会变成 www.mysite.com/ABC 123,这并不好。我希望它变成www.mysite.com/ABC%20123

有什么建议吗?

谢谢

【问题讨论】:

【参考方案1】:

您需要 encodeURI() 函数。

var theString = "The quick brown fox jumped over the lazy dog.";

console.log(encodeURI(theString));

【讨论】:

太棒了,这就是答案,谢谢!

以上是关于使用 js 或 jQuery 强制空格从 HTML 输入字段转换为 %20 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

jQuery怎么加载一个html页面到我指定的div里面

jQuery Mobile 应用强制浏览器忽略缓存页面

使用 js 或 jquery 限定 html 数据

JS(去掉前后空格或去掉所有空格)的用法

JS(去掉前后空格或去掉所有空格)的用法

怎么在jq中的html()中添加换行或者空格符