Html 向输入字段添加数据

Html 向输入字段添加数据,html,forms,post,Html,Forms,Post,我正在尝试向我的页面添加一个搜索框,该搜索框将用户定向到其他站点上的搜索结果页面。我在隐藏字段中有操作和所有其他必需的数据,以确保正确发布 问题是,他们在搜索词上附加了额外的数据,使其成为高级搜索类型的字段。因此,它不是searchTerm=X,而是searchTerm=Locale(en):FQE=(KE,None,11)MY_SEARCH_TERM:和:LQE=(AC,None,8)全文$ 我如何在搜索词周围添加额外的数据,而不必点击中间页面进行连接 以下是我目前掌握的情况: <for

我正在尝试向我的页面添加一个搜索框,该搜索框将用户定向到其他站点上的搜索结果页面。我在隐藏字段中有操作和所有其他必需的数据,以确保正确发布

问题是,他们在搜索词上附加了额外的数据,使其成为高级搜索类型的字段。因此,它不是searchTerm=X,而是searchTerm=Locale(en):FQE=(KE,None,11)MY_SEARCH_TERM:和:LQE=(AC,None,8)全文$

我如何在搜索词周围添加额外的数据,而不必点击中间页面进行连接

以下是我目前掌握的情况:

<form action="http://vendors.address/searchresult.do" method="post">
   <input type="hidden" name="type" value="search">
   <input type="hidden" name="sort" value="DateDescend">
   <input type="text" name="queryId">
</form>

我需要一些能导致这类事情的东西:

<form action="http://vendors.address/searchresult.do" method="post">
   <input type="hidden" name="type" value="search">
   <input type="hidden" name="sort" value="DateDescend">
   <input type="hidden" name="queryId" value="Locale%28en%2C%2C%29%3AFQE%3D%28KE%2CNone%2C11%29MY_SEARCH_TERM_HERE%3AAnd%3ALQE%3D%28AC%2CNone%2C8%29fulltext%24">
</form>


任何帮助都将不胜感激。

我能想到两件事:
1.只需将区域设置和内容放入隐藏输入:

<input type="hidden" name="locale" value="en" />


二,。使用javascript提交表单(这是一个可怕的想法——如果javascript关闭,你不想让你的网站崩溃)。

你可以使用javascript通过隐藏的搜索字段来完成。在jQuery中,它类似于:

$("input[name='queryId']").keyup(function() {
   $("#hiddenField").val("Locale%28en%2C%2C%29%3AFQE%3D%28KE%2CNone%2C11%29" + $(this).val() + "%3AAnd%3ALQE%3D%28AC%2CNone%2C8%29fulltext%24");
});
但如果没有JS,它就会崩溃


编辑:是的,点击它,没有刷新答案。

您可以在提交表单之前使用JavaScript进行连接。有几种方法可以做到这一点,但以下是推荐的方法:

由于我没有看到提交按钮,我假设您要计算用户数,点击enter键来提交表单,因此您需要侦听onSubmit事件,并在将帖子发送到服务器之前连接额外的信息

为表单元素指定一个id:

并为文本输入字段指定一个id:

在表单之后添加此脚本块

<script> document.getElementById("searchForm").onSubmit = function(){ var queryField = document.getElementById("queryId"); queryField.value = "prepend_data" + queryField.value + "append_data"; return true; } </script> document.getElementById(“searchForm”).onSubmit=function(){ var queryField=document.getElementById(“queryId”); queryField.value=“prepend_data”+queryField.value+“append_data”; 返回true; } 或者您可以使用JQuery(请这样做),您可以将其放到任何地方:

<script> $(function(){ $("#searchForm") .submit( function(){ $("#queryId).val("prepend_data" + $(this).val() + "append_data"); } ); }); </script> $(函数(){ $(“#搜索表单”) .提交( 函数(){ $(“#queryId).val(“prepend#u data”+$(this.val()+“append_data”); } ); });
希望这会有所帮助

我认为海报所要求的是一种将区域设置和其他数据以及实际查询连接到单个字段中的方法(正如他们在后端使用的任何内容所期望的那样)。如果他们不想点击一个中间URL来为他们进行连接,那么剩下的就是Javascript。是的,它对一些用户不起作用。是的,我知道他们想要什么,但Javascript似乎是个糟糕的主意,我不得不建议一个替代方案。我希望没有JS答案,但这不是你的错。如果它不能被删除的话一个是PHP,它无法完成。