0

特定の html パーツのコンテンツを入力する必要がある選択ボックスを含むフォームのコードを書いています。特定の部分の ID を取得できたので (cms によって自動的に作成されます)、javascript でその部分を呼び出すことができます。

問題は、コンテンツを「赤、青、黄」のようにコンマで分割し、オプションとして選択ボックスに分割する方法がわからないことです。

これが私が持っているJavaScriptコードの一部です:

    function offerte(){
    var kleuren = document.getElementById('product_kleuren'); 

// here has to come a code to populate the select box
    }

そしてhtml部分:

    <div><span class="extra_fields_name">Kleuren</span>:
    <span id="product_kleuren" class="extra_fields_value">Naturel, Helder, Zwart</span></div>

    <label class="offerte_lbl">Kleur: </label><select id='kleuren'  class='offerte_input'></select><br>

私はまだjavascriptを学んでいますが、コンマで分割された特定のhtml部分のコンテンツを取得し、それらを値に分けて選択ボックスに入力する方法を本当に理解できません。

4

4 に答える 4

1

Pure JS を使用.split(",")すると、分割された値を配列に入れ、配列を反復処理してoption要素を作成できます。

<select id="someSelect"></select>

JS

function offerte(){
    var kleuren = document.getElementById('product_kleuren');
    var parts = kleuren.innerHTML.split(",");

    for (var i = 0; i < parts.length; i++) {
        var option = document.createElement("option");
        option.text = parts[i];
        option.value = i;
        document.getElementById("someSelect").appendChild(option);
    }
}

デモ: http://jsfiddle.net/fvDPh/

于 2013-07-25T15:09:58.697 に答える
0

次のように文字列を分割できますString.split

//split the words into an array called "words"
var words = kleuren.split(',');

//iterate through the words with jQuery.each()
$(words).each(function() {
    word = this.trim();   //trim any extra whitespace from the word

    //now you can add the word as an option to the <select>
});
于 2013-07-25T15:10:57.657 に答える