1

将新选项添加​​到下拉菜单并使其成为不可选择且位于列表中的第一个选项的最佳方法是什么?

所以列表应该是这样的:

<select onchange="document.getElementById('product_configure_form').action = 'http://webshop.com/product/options/3603848/'; document.getElementById('product_configure_form').submit();" id="product_configure_option_22853" name="option[22853]">

  <option selected="selected" value="78619">Choose a size</option> // this is the new not selectable option
  <option selected="selected" value="78619">S</option>
  <option value="78620">M</option>
  <option value="78621">L</option>
</select>

我知道如何添加一个选项:

$('#product_configure_option_22853').append('<option value="Choose" selected="selected">{{ 'select your size' | t }}</option>');

但是如何使它不可选择并且是列表中的第一个呢?

非常感谢任何帮助!

4

2 回答 2

3

使用 .prepend()

$('#product_configure_option_22853').prepend('<option value="Choose" disabled="disabled">{{ 'select your size' | t }}</option>');
于 2013-07-04T20:36:39.513 回答
2

你不能两者兼得。

如果您禁用某个选项,它将被跳过以支持可选选项,即使它在列表中是第一个:

<select>
    <option disabled>One</option>
    <option>Two</option>
    <option>Three</option>
</select>

在此示例中,选项二将显示为默认选项。如果选项被禁用,您将无法选择它。

如果您确实需要该行为,则需要验证该选项是否未被选中,而不是依赖 HTML 属性。

于 2013-07-04T20:33:10.097 回答