如何用& *结束搜索到的网址

时间:2017-03-27 09:18:54

标签: html css

我正在努力建立一个链接到google.no(挪威)的搜索栏。当您搜索音乐时,您会收到以下网址:https://www.google.no/#q=music& *。我的问题是如何在搜索结束时获得(& *)。



.search {
  border: solid 1px grey;
  border-radius: 3px;
  padding: 10px;
  padding-left: 30px;
  padding-right: 30px;
  font-size: 15px;
  margin: 15px;
}

<form class="form" action="http://www.google.no/#q=">
  <input class="search" name="q" placeholder="Search...">
</form>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您无法提交到此Google页面,因为其中包含锚#。这意味着,如果您只是将表单提交到此URL,则它不具有常规的GET格式。您必须在JavaScript或后端计算正确的URL。

如果要使用JavaScript创建正确的URL,可以使用函数encodeURIComponent(url)来转义参数。

以下是一个例子:

var searchBox = document.querySelector('.search');
var form = document.querySelector('.form');

form.addEventListener('submit', function(event) {
  var value = searchBox.value;
  var escapedValue = window.encodeURIComponent(value);
  var url = "https://www.google.no/#q=" + escapedValue

  alert(url);
  window.location.href = url;

  event.preventDefault();
});
<form class="form" action="test">
  <input class="search" name="q" placeholder="Search...">
  <input type="submit" class="submit" value="Submit">
</form>