我有一个选择半径的搜索表单,我使用在线api搜索邮政编码。 api auto如果输入则提交输入,但在提交后我改变半径我必须再次输入邮政编码,否则不会发送新数据。
我想知道是否可以在选择半径的更改时刷新邮政编码的输入。
我的搜索表单:
<form name="input" method="post" action="searchresults" class="pro6pp_range">
<input type="search" onchange="validate()" placeholder="Zoeken..." name="search" size="85">
<input type="search" name="searchpc" required="required" class="postcode" value='<?= $postcode ?>' placeholder="Postcode (1234)" maxlength="4">
<select id="selection" class="range" onchange="updateInput(this.value)">
<option value="5">5 km</option>
<option value="10">10 km</option>
<option value="15">15 km</option>
<option value="20">20 km</option>
<option value="50">50 km</option>
</select>
<input type="submit" value="Zoeken">
<br/>
<span class="message"></span>
<span class="output"></span>
<br/>
</form>
我尝试了这个,但它不起作用:
function updateInput(searchpc){
document.getElementByName("searchpc").value = <?php echo $postcode ?>;
}
还要注意我的选择框上的onChange函数。
答案 0 :(得分:1)
可能会起作用
function updateInput(searchpc){
document.getElementByName("searchpc").value = searchpc;
}
searchpc是select tag的“this.value”。
如果它正常工作,请告诉我。
的更新强> 的
您键入9101然后如果选择10km,则可以发布表单
function updateInput(searchpc)
{
document.input.submit();
}
所以我们将在搜索结果页面中同时获得9101和10km。
NEW UPDATE
我认为您的小盒子输入表格应该如下。
<form name="small_input" action="searchresults" method="post">
<input type="text" placeholder="Postcode" size="25" name="postcode"/>
<select name="radius" class="range" onchange="updateInput(this.value)">
<option selected="" disabled="">Afstand</option>
<option value="5">5</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="25">25</option>
</select>
<br><br>
<hr>
<br>
<p style="float: right"><input type="submit" value="Opslaan"></p>
<input type="hidden" value="true" name="submitted">
<input type="hidden" value="true" name="afstand">
</form>
请让我知道状态如何。
答案 1 :(得分:0)
据我所知getElementsByName
将返回array
。
因此,请尝试使用id
代替name
<input type="search" name="searchpc" id="searchpc" .... />
你的功能就像,
function updateInput(searchpc){
document.getElementById("searchpc").value = searchpc;
// I think it should be selected value from select box notphp value
}