在jQuery

问题描述

我想选择第一个标签下面的每个<option>标签,并且我只想要值和</option>间的文本。我尝试执行以下操作;

$('#attributesize-size_uswomen > option')

但是它只给我第一个<option>。我想排除第一个<option>标记获取值。这是我想要的HTML块。

我想获取“源”大小,即6、6.5等,谢谢

<select name="size_attribute[size]" id="attributesize-size_uswomen" class="size-attribute-select">
  <option>Choose Your Size</option>
  <option value="12773" source="16004">5.5</option>
  <option value="12774" source="16006">6</option>
  <option value="12775" source="16008">6.5</option>
  <option value="14805" source="16010">7</option>
  <option value="14809" source="16012">7.5</option>
  <option value="12749" source="16014">8</option>
  <option value="14816" source="16016">8.5</option>
  <option value="14820" source="16018">9</option>
  <option value="14824" source="16020">9.5</option>
  <option value="15175" source="16022">10</option>
  <option value="15178" source="16024">10.5</option>
  <option value="15184" source="16028">11.5</option>
  <option value="15187" source="16030">12</option>
</select>

解决方法

按照@ freedomn-m的建议,您可以使用此功能:

$('#attributesize-size_uswomen > option:not(:first)').map(function() {
   return $(this).text();
}).get();

从所有选项(第一个选项除外)获取值数组。但是更好的选择器是:

'#attributesize-size_uswomen > option[value]'

无论您是否使用空选项都可以使用。 (它将获得所有具有value属性的选项。)