フィルターボックスの上部にリストされる多くのオプションを持つフィルターを作成しようとしています.今、国を追加しようとしており、正規表現を使用することにしました. しかし、私はそれを動作させることができません.何らかの理由で、文字列の先頭ではなく途中で置き換えられます.
JS コード:
function countryCheck(object) {
var filter = document.getElementById("search_filter");
var re = new RegExp("<b>Location<\/b>:\s[a-zA-Z\s]+\s\|\s");
filter.innerHTML = filter.innerHTML.replace(re, ("<b>Location</b>: " + object.value.replace(" ", "") + " | "));
}
HTML コード:
<div id='search_filter'><b>Filter</b>: <b>Location</b>: Anywhere | <b>Player Slots</b>: >=0/>=0</div>
<br />
<select class='select' style='width:100%;' onchange='countryCheck(this);'>
<option>Anywhere</option>
<option>Europe</option>
<option> Sweden</option>
<option> Germany</option>
<option> United Kingdom</option>
<option> France</option>
<option>North America</option>
<option> Canada</option>
<option> United States</option>
<option> Mexico</option>
</select>
問題の内容を示す jsFiddle: jsFiddle
私はそれが現在<b>Location</b>: [some country] |
を置き換えるようにしようとしています<b>Location</b>: [some other country] |