Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Zmiana wartości pola wejściowego, gdy użytkownik wybierze opcję z pola wyboru

Problem nie dotyczy twojego żądania ajax, ale selektorów jquery, których używasz. W jquery $('.value') oznacza wszystkie elementy DOM z klasą „value”. A więc $(".price") wybierze WSZYSTKIE elementy z klasą "cena", ale nie widzę żadnego z nich. Aby wybrać coś po nazwie, musisz użyć $('input[name=price]') . Spowoduje to wybranie wszystkich wejść o nazwie „cena”. Aby wybrać wszystkie dane wejściowe, których nazwa zaczyna się od ceny, użyj $('input[name^=price]') . Rozwiązaniem twojego problemu jest prawdopodobnie umieszczenie elementu SELECT i INPUT w kontenerze i wybranie odpowiedniego tylko INPUT.

<div>
    <select name='pro_name[]'>
    <option value='1'>Pro 1</option>
    <option value='2'>Pro 2</option>
    <option value='3'>Pro 3</option>
    </select>

    <input type='text' name='price[]'>
</div>
<div>
    <select name='pro_name[]'>
    <option value='1'>Pro 1</option>
    <option value='2'>Pro 2</option>
    <option value='3'>Pro 3</option>
    </select>

    <input type='text' name='price[]'>
</div>

<script type="text/javascript">
    var $last_select = null;
    $(document).ready(function(){
        $("select[name^=pro_name]").change(function(){
            $last_select = $(this);
            var id=$(this).val();
            var dataString = 'id='+ id;
            $.ajax
            ({
                type: "POST",
                url: "get_price.php",
                data: dataString,
                cache: false,
                success: function(html)
                    {
                        $('input[name^=price]', $last_select.parent()).val(html);
                    } 
            });
        });
    });
</script>

Skrzypce:http://jsfiddle.net/8rsxay8q/1/




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zaznacz WSZYSTKIE pola zawierające tylko WIELKIE litery

  2. PHP pobiera dane z wiersza tabeli i przechowuje w zmiennej

  3. Logika rekurencyjna w PHP + MySQL

  4. Indeksy InnoDB przed i po zaimportowaniu

  5. Nie można uruchomić MySQL na Macu