ドロップダウンが2つあります。最初のドロップダウンはデザインカラーです。2つ目は、デザインが印刷されるものです。赤いデザインの場合もありますが、色が混ざり合うため、赤いラップに印刷することはできません。最初のオプションを分割して、その色を表示し、それが下のオプションと一致する場合は無効にしようとしています。別のオプションを選択すると、無効になっているオプションが更新されます。
私のアイデアは、strを作成し、それを使用してオプション名に含まれているかどうかを確認することでした。うまくいかないようですので、何か小さなものが欠けていると思います。たとえば、「str」を「Red」に置き換えると、赤が無効になりますが、その場で機能しなくなります。これは、私が行う必要があることです。どんな助けでも大歓迎です。
これは私が苦労している部分です:$(designColor).children('option:contains(str)')。attr('disabled'、'disabled');
<p>
<select onchange="change_option('SELECT___LX-03675___185',this.options[this.selectedIndex].value)" name="SELECT___LX-03675___185">
<option selected="" value="0">Choose Water Bottle WRAP Color</option>
<option value="1343">Black Water Bottle</option>
<option value="1052">Green Water Bottle</option>
<option value="1874">Purple Water Bottle</option>
<option value="1051">Red Water Bottle</option>
<option value="1053">Royal Water Bottle</option>
<option value="1813">Pink Water Bottle</option>
</select><br>
<select onchange="change_option('SELECT___LX-03675___529',this.options[this.selectedIndex].value)" name="SELECT___LX-03675___529">
<option selected="" value="0">Choose Water Bottle DESIGN Color</option>
<option value="2519">Pink Design Water Bottle</option>
<option value="2520">Red Design Water Bottle</option>
<option value="2521" disabled="disabled">White Design Water Bottle</option>
<option value="2522">Black Design Water Bottle</option>
<option value="2523">Blue Design Water Bottle</option>
</select>
</p>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var wrapColor = $('select[name=SELECT___LX-03675___185]');
var designColor = $('select[name=SELECT___LX-03675___529]');
$(wrapColor).change(function () {
var str = "";
$(wrapColor).children("option:selected").each(function () {
str += $(this).text().split(' ')[0] + " ";
});
$(designColor).children('option').removeAttr('disabled');
$(designColor).children('option:contains(str)').attr('disabled','disabled');
})
.trigger('change');
});
</script>