1

我有以下选择:

<option value="Kabardino-Balkar Republic">Kabardino-Balkar Republic</option>
<option value="Karachay-Cherkess Republic">Karachay-Cherkess Republic</option>
<option value="Karelia Republic">Karelia Republic</option>
<option value="Komi Republic">Komi Republic</option>
<option value="Mari El Republic">Mari El Republic</option>
<option value="Mordovia Republic">Mordovia Republic</option>

..我希望它们采用以下格式:

<option value="Kabardino-BalkarRepublic">Kabardino-Balkar Republic</option>
<option value="Karachay-CherkessRepublic">Karachay-Cherkess Republic</option>
<option value="KareliaRepublic">Karelia Republic</option>
<option value="KomiRepublic">Komi Republic</option>
<option value="MariElRepublic">Mari El Republic</option>
<option value="MordoviaRepublic">Mordovia Republic</option>

如何删除value属性中大写单词之间的空格,同时保持连字符完好无损?

4

3 回答 3

5
$('option').val(function(i, val){
  return val.split(" ").join("")
})

于 2012-09-05T02:24:40.100 回答
2

只需将正则表达式与字符串替换方法一起使用?

$('option').each(function(){
   var $this = $(this);
   $this.val($this.val().replace(/\s/g,'')); // <-- replace a space with no space
});​

http://jsfiddle.net/XgNJV/

于 2012-09-05T02:25:40.140 回答
0

在这里,我为上述问题做了垃圾箱。您也可以查看演示链接。

演示: http ://codebins.com/bin/4ldqp7o

HTML

<select id="demo">
  <option value="Kabardino-Balkar Republic">
    Kabardino-Balkar Republic
  </option>
  <option value="Karachay-Cherkess Republic">
    Karachay-Cherkess Republic
  </option>
  <option value="Karelia Republic">
    Karelia Republic
  </option>
  <option value="Komi Republic">
    Komi Republic
  </option>
  <option value="Mari El Republic">
    Mari El Republic
  </option>
  <option value="Mordovia Republic">
    Mordovia Republic
  </option>
</select>

jQuery

$(function() {
    $("#demo option").each(function() {
        var $option = $(this);
        $option.val($option.val().replace(/([A-Za-z0-9-_])\s([A-Z]{1})/g, '$1$2'));
    });
});

演示: http ://codebins.com/bin/4ldqp7o

于 2012-09-05T09:45:45.443 回答