每个单词的字符都应该来自jquery

时间:2015-06-16 04:53:37

标签: javascript jquery html

我的dropdownlist包含几个值,我正在从jquery动态地应用css(用于每个单词的大写字符),但结果没有按预期进行,只有选定的值受到影响。 删除带有值的下载列表

<select id="pList" class="formSelectCity form-control">
<option value="65064">swastik-cottage</option>
<option value="65063">snow-crown-cottage</option>
<option value="65009">white-pearl-cottage</option>
<option value="65061">rana-cottage</option>
<option value="65097">hill-view-cottage</option>
<option value="65103">arjun-kutir-cottage</option>
</select>

jquery的

$('#pList').css("text-transform","capitalize");

我也想删除所有连字符&#34; - &#34;与空间&#34; &#34;在所有期权价值中。

2 个答案:

答案 0 :(得分:4)

我认为您必须替换每个选项的文本

auto

&#13;
&#13;
$('#pList option').text(function (i, text) {
    return text.replace(/-/g, ' ').replace(/(?:^|\s)\S/g, function (a) {
        return a.toUpperCase();
    });
});
&#13;
$('#pList option').text(function(i, text) {
  return text.replace(/-/g, ' ').replace(/(?:^|\s)\S/g, function(a) {
    return a.toUpperCase();
  });
})
&#13;
&#13;
&#13;

答案 1 :(得分:1)

在更改CSS之前,您只需用空格替换连字符:

$('#pList option').each(function(){
    $(this).html($(this).html().replace(/-/g," "));
});

$('#pList').css("text-transform","capitalize");