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

上記の Jquery は、ドロップダウン メニューを他のページから現在のページにロードし、ユーザーが選択したときに値を別の入力フィールドに渡します。問題は、リモート ページの #StateFeeder から取得されたオプション値に次の形式が含まれていることです。

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

上記の値はノンストップの大文字の単語であり、現在のページに読み込まれるときに、以下のように大文字の単語の間にスペースを入れてフォーマットする必要があります ("-" ところで単語を保持してください) 。値は #ItemState メニューに読み込まれます。たとえば、"KareliaRepublic" などの値 (スペースなしの "KareliaRepublic") は、リモート メニューを適切に読み込むことができるように ID と見なされます。この読み込みプロセスが完了するまでフォーマットしてから、スペースの追加アクションを処理してください。どうもありがとうございます:

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

2 に答える 2

1

これはうまくいくはずです:

value = value.​​replace(/([^-])([A-Z])/g, "$1 $2");
于 2012-09-04T14:24:50.330 に答える
0

正規表現を使用して、値の文字列を操作します。

var stateVal = this.value.replace(/([a-z])([A-Z])/g, '$1 $2');

http://jsfiddle.net/mblase75/BgUFm/

での正規表現の使用の詳細.replace()

于 2012-09-04T14:24:56.587 に答える