Dla następującego formularza

<form action ='search.php' method = 'post'>

<select name="filter">
<option id="A" value="A">A</option>
<option id="B" value="B">B</option>
</select>

<input type ='text' name="key" id ="field" value ="something that changes based on what option is selected" />

<input type ='submit' value = 'Search' />

</form>

Jak wybrać wartość zmiany pola wejściowego na podstawie tego, czy wybrano: A lub B jest wybrany? Zakładam, że musi być wykonany w JavaScript. Użyłem jquery tutaj i tam, więc jest w porządku, aby dokonać sugestii na tym. Wielkie dzięki!

3
algorithmicCoder 18 październik 2011, 07:53

3 odpowiedzi

Najlepsza odpowiedź

Możesz spróbować tego

<script type="text/javascript">
function changeValue(){
    var option=document.getElementById('filter').value;

    if(option=="A"){
            document.getElementById('field').value="A Selected";
    }
        else if(option=="B"){
            document.getElementById('field').value="B Selected";
        }

}
</script>
<form action ='search.php' method = 'post'>

    <select name="filter" id="filter" onchange="changeValue();">
<option id="A" value="A">A</option>
<option id="B" value="B">B</option>
</select>

<input type ='text' name="key" id ="field" value ="something that changes based on what option is selected" />

<input type ='submit' value = 'Search' />

</form>
4
Arun Kumar 18 październik 2011, 04:06

Nie musisz używać jQuery, (ale jQuery ułatwia życie):

HTML:

<form action ='search.php' method = 'post'>
    <select id="filter" name="filter">
    <option id="A" value="A">A</option>
    <option id="B" value="B">B</option>
    </select>

    <input type ='text' name="key" id ="field" value ="something that changes based on what option is selected" />

    <input type ='submit' value = 'Search' />    
</form>

JavaScript:

document.getElementById('filter').onchange = function () {
    document.getElementById('field').value = event.target.value  
}

Przykład

9
Joe 4 luty 2013, 21:38

Daj identyfikator filter, aby wybrać

 $(document).ready(function(){  
   var text_val;  
   $('#filter').change(function(){  
     text_val = $(this).val();
     $('#field').attr('value',text_val);  
     return false;  

   });

});
2
Xavier Barbosa 5 maj 2014, 09:05