0

簡単な選択タグがあります:

<select>
  <option></option>
  <option></option>
</select>

次に、jQuery を使用してオプションのコンテンツを取得します。

var s=$('select option');
for(var i=0;i<s.length;i++){
    console.log(s[i]);
}

"<option>"コンテンツなしで表示されるだけです。

を使用するconsole.log(s[i].html());と、それが間違っていることがわかります。

では、コンテンツを取得するにはどうすればよいでしょうか。

4

3 に答える 3

3

テキスト コンテンツを取得するのに jQuery は必要ありません。

アンHTMLOptionElementには.textプロパティがあります。

var s = $('select option');

for(var i = 0; i < s.length; i++) {
    console.log(s[i].text);
}

.outerHTML要素のが必要な場合(質問に少し混乱しています)、これを行うことができます...

var s = $('select option');

for(var i = 0; i < s.length; i++) {
    console.log(s[i].outerHTML);
}

...これは Firefox で最近利用可能になったばかりなので、パッチを適用するメソッドを作成できます...

function outerHTML(el) {
    return el.outerHTML || document.createElement('div')
                                   .appendChild(el.cloneNode(true))
                                   .parentNode
                                   .innerHTML;
}

...そして、このように使用します...

var s = $('select option');

for(var i = 0; i < s.length; i++) {
    console.log(outerHTML(s[i]));
}
于 2012-04-08T14:28:26.390 に答える
1

「コンテンツ」がオプションのテキスト値を意味すると仮定して、これを試してください:

$("select option").each(function() {
    console.log($(this).text());
});
于 2012-04-08T14:17:24.597 に答える
0

text()メソッドを使用して要素のテキスト ノード値を抽出する

于 2012-04-08T14:17:26.173 に答える