如何在输入的输入值中添加文本

时间:2017-11-18 10:14:31

标签: html

如何将字符串添加到表单用户所写的文本中?

例如,如果他想搜索“test”,我的表单应提交“site:mysite.de test”。

(我尝试将字符串发送到的名称为q。)

我试过

<form action="https://searx.me" method="get" accept-charset="UTF-8">
    <input type="text" name="q" placeholder="Search with Searxes" required>
    <input type="hidden" name="q" value="site:mysite.de">
</form>

预期仅提交第一个值https://searx.me/?q=test

我更喜欢没有javascript的纯html解决方案。

1 个答案:

答案 0 :(得分:1)

这是一种丑陋的方式,看起来像绑定;)

var hidden = document.getElementsByClassName('hidden')[0];

var hidden_attr = hidden.getAttribute('value');

var show = document.getElementsByClassName('show')[0];

function magic(){
  hidden.setAttribute('value', hidden_attr + show.value);
  console.log(hidden.getAttribute('value'));
}
<form action="https://searx.me" method="get" accept-charset="UTF-8">
    <input class="show" onkeyup="magic()" type="text" name="q" placeholder="Search with Searxes" required>
    <input class="hidden" type="hidden" name="q" value="site:mysite.de ">
</form>