Jquery在加载数据后添加空格btw大写的不间断单词

Jquery在加载数据后添加空格btw大写的不间断单词,jquery,Jquery,上面的Jquery将从其他页面加载下拉菜单到当前页面,并在用户进行选择时将值传递到另一个输入字段。问题是,从远程页面中的StateFeeder获取的选项值包含以下格式: <script type="text/javascript"> var CountryVal; var StateVal; $(document).ready(function(){ $('#ItemCountry').change(function(){ CountryVal = this.

上面的Jquery将从其他页面加载下拉菜单到当前页面,并在用户进行选择时将值传递到另一个输入字段。问题是,从远程页面中的StateFeeder获取的选项值包含以下格式:

<script type="text/javascript">
var CountryVal;
var StateVal;
$(document).ready(function(){
    $('#ItemCountry').change(function(){
        CountryVal = this.value; // value of the select element
        $("#StateFeeder").html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
        $('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-'+CountryVal, function(){
            $('#ItemState').change(function(){
                StateVal = this.value; // value of the select element
                $("#CityFeeder").html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
                $('#CityFeeder').load('/Country/'+CountryVal+'/_'+CountryVal+'_suburbs.html #Suburbs-'+StateVal, function(){
                    $('#CityFeeder select').attr('size', '5');
                    $('#CityFeeder select').change(function(){  
                        this.form['CAT_Custom_221342'].value=$(this).val();
                    }); 
                });        
            })
        });
    });
});           
</script>
上面的值是不间断的大写单词,我希望它们在大写单词之间使用空格进行格式化,如下所示。请保留-btw单词当它们加载到当前页面时,ItemState部分特别关注:当城市值加载到ItemState菜单时,e、 g.KareliaRepublic没有空格的值KareliaRepublic被视为id,以便可以正确加载远程菜单,请将其格式化,直到加载过程完成,然后处理添加空格操作。多谢各位:

<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>
这应该起作用:

<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>

使用正则表达式操作值字符串:

value = value.​​replace(/([^-])([A-Z])/g, "$1 $2");

“你在那里扔掉了一个非常有用的字符。@Blazemonger是的,但前提是后面跟一个大写字符,所以这没关系,不是吗?你误解了。如果你运行你的代码,你正在删除上一个单词的最后一个字符。@Blazemonger哦,是的,你说得对,我的错。我编辑了,非常感谢!谢谢sp00m,但您的代码不起作用。无论如何,谢谢你……:
var stateVal = this.value.replace(/([a-z])([A-Z])/g, '$1 $2');