sql >> データベース >  >> RDS >> Mysql

ユーザーが選択ボックスからオプションを選択したときに入力フィールドの値を変更する

    問題はajaxリクエストではなく、使用するjqueryセレクターにあります。 jqueryで$('.value') クラス「値」を持つすべてのDOM要素を意味します。したがって、$(".price") クラス「price」のすべての要素を選択しますが、いずれも表示されません。名前で何かを選択するには、$('input[name=price]')を使用する必要があります 。これにより、「price」という名前のすべての入力が選択されます。名前がpriceで始まるすべての入力を選択するには、$('input[name^=price]')を使用します 。問題の解決策は、おそらくSELECT要素とINPUT要素をコンテナに入れ、対応する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>
    

    フィドル: http://jsfiddle.net/8rsxay8q/1/




    1. SQL Serverの別のデータベースからOBJECT_NAME()を取得する方法

    2. なぜmysqldがLinuxシステムの4つの場所にあるのですか?

    3. MySQLビューは通常のクエリよりも高速ですか?

    4. PL / pgSQL関数に副作用があるのに、SQL関数にはないのはなぜですか?