Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML操作将空格变为加号_Javascript_Html - Fatal编程技术网

Javascript HTML操作将空格变为加号

Javascript HTML操作将空格变为加号,javascript,html,Javascript,Html,一个新手问题: 我有一个简单的提交表单,问题是如果为输入提供了任何空间,那么该值将更改为加号(+) 这是我的表格: <form name="input" action="search" method="get"> Web Address: <input type="text" name="address"><br> Search Query: <input type="text" name="query"><br> <input

一个新手问题:

我有一个简单的提交表单,问题是如果为输入提供了任何空间,那么该值将更改为加号(+)

这是我的表格:

<form name="input" action="search" method="get">
Web Address: <input type="text" name="address"><br>
Search Query: <input type="text" name="query"><br>
<input type="submit" value="Search">
</form>

网址:
搜索查询:
我想举一个例子:

如果用户在第一个框中填写“此处地址”,在第二个框中填写“此处查询”。单击后我得到的地址是
“搜索?地址=地址+此处&query=query+此处”
,而不是
“搜索?地址=地址%20此处&query=query%20此处”
。如何使用
%20
而不是+符号来更改这些“名称空间”


我不想要加号而不是
%20
的原因是我正在用Java语言编写搜索引擎,并使用sun的httpserver库作为web服务器。此库使用
.getRequestURI().getQuery()
方法处理结果的“查询”部分(在?号之后),但是此方法将%20处理为空格,并将加号视为加号。如果这不是“可修复的”,那么我也可以接受包含javascript的解决方案。

将空格符号编码为加号是由于表单使用的加号,因此我认为这是不可能的

它是urlencoded的,应该不重要……浏览器将再次解码该值。它不是urlencoded,而是形式urlencoded,这是微妙的不同(我知道的唯一区别是
+
而不是
%20
)。浏览器不会解码该值。不过,任何表单处理库都应该这样做。我在Java中使用这些信息,不幸的是,这对我来说很重要,因为这不是一个浏览器问题。@SarpKaya-您如何在Java中使用它?您使用什么函数读取查询字符串?@Quentin我现在写了详细的原因这是真的,但它没有回答问题,应该是一个注释。@Quentin:Oops。。。我认为我的答案是显而易见的。不过,我已对其进行了相应的编辑。谢谢。这是可能的(您只需在JS中重新构建整个表单提交逻辑,然后才能修改它)。