0

#change_product というフォームがあり、このコードで jquery による選択を追加します。

var strCategory = '<div class="rowEl"><label>Label<span>*</span></label><div class="select"><select name="product_category" class="mandatory"><option value=""></option>'; 

$.each(product.categoryCdVersion, function(category, cdVersion){
    strCategory += '<option value="'+cdVersion+'">'+category+'</option>';
});
strFascia += '</select></div>';           
$("#product_options").prepend(strCategory);

product_category select を使用する場合、フォーム内に配置した cdVersion という入力タイプを変更する必要があります。

 <form id="change_product" class="usersetting change_product" action="/"> 
        ...
        <input type="hidden" name="cdVersion" value=""/>
        ...

 </form>

これは私がすることです

jQuery(function ($) {
    $(function() {  

        ...
        $('#change_product').find('select[name="product_category"]').change(function() {
            var cdVersionFromCategory = this.options[this.selectedIndex].value;
            $("#change_product").find('input[name="product_cdVersione"]').val(cdVersionFromCategory);
        });
        ...

     });            
});

しかし、私は常に cdVersion のオプション リストの最初の値を取得し、change 関数内の console.log でログに記録したものは何も表示されないため、エラーが発生しているに違いありません。どう思いますか? ドキュメントがロードされた後に選択が作成されるためですか?ありがとう。

4

1 に答える 1