使用javascript和html将搜索提交到外部网站并在新选项卡中打开

使用javascript和html将搜索提交到外部网站并在新选项卡中打开,javascript,html,search,external,hashtag,Javascript,Html,Search,External,Hashtag,我是这个社区的新手,但我期待着随着我作为程序员职业生涯的发展而增加价值。我有点纠结于某些事情,我希望能得到一些帮助 我真的很快就要做好了,但我有一个“#”让我很反感。情况就是这样 我在我正在构建的chrome扩展弹出窗口上有一个搜索框,用于将其输入提交到另一个网站的搜索。比如说,我在搜索框中输入“帮助”并按enter键 我访问的url如下: 我需要访问的url与“main.action”完全相同,但就在“I need a”#之后。这样地: 我的表单html代码如下所示: <form t

我是这个社区的新手,但我期待着随着我作为程序员职业生涯的发展而增加价值。我有点纠结于某些事情,我希望能得到一些帮助

我真的很快就要做好了,但我有一个“#”让我很反感。情况就是这样

我在我正在构建的chrome扩展弹出窗口上有一个搜索框,用于将其输入提交到另一个网站的搜索。比如说,我在搜索框中输入“帮助”并按enter键

我访问的url如下:

我需要访问的url与“main.action”完全相同,但就在“I need a”#之后。这样地:

我的表单html代码如下所示:

<form target="_blank"  action="https://example.com/search/main.action/search/doAdvancedSearch.action" + "?">
<label>Search :
  <input type="search" name="searchQuery.search">
</label>
  <button type= "submit">Search website</button>
</form>
var searchItem = document.getElementById('search').value;
console.log(searchItem);

function website(){
  window.open('https://example.com/home/main.action', '_blank');
  document.getElementById('q').value = searchItem;
  document.getElementById('searchArchived').click();
  var results = document.getElementById('search-results').value;
};

document.getElementById('gotowebsite').addEventListener('return', website);


}
我尝试了各种方法在url中添加#,但我没有得到任何运气。即使在main.action后面加上+“#”,也会产生不想要的结果。有什么建议吗?提前谢谢

是的,我尝试过使用其他针对类似问题的建议。他们没有解决这个问题/

这就是工作:

函数重定向(){
var searchitem=document.getElementById(“搜索”);
window.location.replace(“https://example.com/search/main.action#/search/doAdvancedSearch.action?searchQuery.search“+searchitem.value);
}

搜索:
搜索网站

谢谢您。复制和粘贴这些对我来说不起作用,但我想我理解你在做什么。从你的方法来看,我似乎真的把事情复杂化了。基本上,您是从输入框中将我的搜索词建立为一个变量,然后将该变量添加到我的url的末尾。在过去,我的搜索词只是跳进了“#”的位置,但我会继续使用你发送的内容,直到我找到答案。一件事是,这个按钮应该在一个新的选项卡中打开搜索结果。我在您的表单中添加了target=“\u blank”,但这对我来说还不起作用。谢谢我编辑了我的问题,这样表格就会打开一个新的页面。你是玛恩!!!谢谢你,韦斯。根据你的建议,我得以使它发挥作用。我唯一更改的是删除代码末尾的“帮助”。这是我正在搜索的关键字的一个例子,而不是URL本身的一部分。由于我是从我正在构建的chrome扩展启动此页面的,因此使用window.location.replace无法正常工作。不过,使用window.open很有魅力。