是否可以在选择框的更改上刷新html输入?

时间:2013-06-21 10:52:12

标签: php jquery html codeigniter onchange

我有一个选择半径的搜索表单,我使用在线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函数。

2 个答案:

答案 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
}