0

私はJqueryが初めてです。最初のドロップダウンリストから値を選択し、最初のドロップダウンリストより大きいすべての値が2番目のドロップダウンリストに表示される依存ドロップダウンリストを作成しました。
最初のドロップダウンリストで値を選択すると、以下の関数が呼び出されます:

<script>    
function cost_change(price) {
    var value = price;
    console.log("value",value);      
    var toKeep = jQuery('#SearchForm_max_cost_select option').filter( function( ) {
        return parseInt(this.value) > parseInt( value);       
 } );        
   console.log("to keep",toKeep);
   jQuery('#SearchForm_max_cost_select').html(toKeep);
}
</script>  

これで、関数は正常に動作しますが、問題は、最初のドロップダウンリストから初めて 3 を選択したとき、2 番目のドロップダウンリストに値 [4,5,6] が表示されたことです。その後、最初のドロップダウンリストから 2 を選択すると、2 番目のドロップダウンリストに [3,4,5,6] の代わりに [4,5,6] の値が表示されました。最初のドロップダウンリストで昇順で数字を選択すると表示される値は正常に機能します。しかし、最初のドロップダウンリストの値を以前に選択した値よりも小さくしても、変更はありません。

キャッシュの問題ですか、それとも上記の機能を変更する必要があります。

EDIT : 関数 cost_change に渡される変数 price は、最初のドロップダウンリストで選択された値であり、正常に動作します

HTML :

<td width="250" bgcolor="#F1F5F6">
                        <select id="SearchForm_min_cost_select" style="display: none;">
<option value="0"></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>

</select><input type="text" id="SearchForm_min_cost" name="SearchForm[min_cost]" style="width:70px" placeholder="Min Cost" class="ui-autocomplete-input ui-widget ui-widget-content ui-corner-left" autocomplete="off" role="textbox" aria-autocomplete="list" aria-haspopup="true"><button type="button" tabindex="-1" title="Show All Items" id="btn" class="ui-button ui-widget ui-state-default ui-button-icon-only ui-corner-right ui-button-icon" role="button" aria-disabled="false"><span class="ui-button-icon-primary ui-icon ui-icon-triangle-1-s"></span><span class="ui-button-text">&nbsp;</span></button>        <select id="SearchForm_max_cost_select" style="display: none;">
<option value="0"></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select><input type="text" id="SearchForm_max_cost" name="SearchForm[max_cost]" style="width:70px" placeholder="Max Cost" class="ui-autocomplete-input ui-widget ui-widget-content ui-corner-left" autocomplete="off" role="textbox" aria-autocomplete="list" aria-haspopup="true"><button type="button" tabindex="-1" title="Show All Items" id="btn" class="ui-button ui-widget ui-state-default ui-button-icon-only ui-corner-right ui-button-icon" role="button" aria-disabled="false"><span class="ui-button-icon-primary ui-icon ui-icon-triangle-1-s"></span><span class="ui-button-text">&nbsp;</span></button>                            </td>
4

1 に答える 1