0

所以我的 HTML 看起来像这样:

<div id="setence">
<select id="spellingSuggestions"> 
    <option class="0" value="teh">teh</option> 
    <option class="1" value="the">the</option> 
    <option class="2" value="Te">Te</option> 
    <option class="3" value="tech">tech</option> 
    <option class="4" value="Th">Th</option> 
    <option class="5" value="eh">eh</option> 
</select> 
<select id="spellingSuggestions"> 
    <option class="0" value="wuick">wuick</option> 
    <option class="1" value="quick">quick</option> 
    <option class="2" value="wick">wick</option> 
    <option class="3" value="Vick">Vick</option> 
    <option class="4" value="Buick">Buick</option> 
    <option class="5" value="whack">whack</option> 
</select> 
<span class="correctWord">brown</span>
<select id="spellingSuggestions"> 
    <option class="0" value="fx">fx</option> 
    <option class="1" value="Fax">Fax</option> 
    <option class="2" value="Fox">Fox</option> 
    <option class="3" value="fax">fax</option> 
    <option class="4" value="fix">fix</option> 
    <option class="5" value="fox">fox</option> 
</select> 
<span class="correctWord">jumped</span>
<span class="correctWord">over</span>
<select id="spellingSuggestions"> 
    <option class="0" value="teh">teh</option> 
    <option class="1" value="the">the</option> 
    <option class="2" value="Te">Te</option> 
    <option class="3" value="tech">tech</option> 
    <option class="4" value="Th">Th</option> 
    <option class="5" value="eh">eh</option> 
</select> 
<select id="spellingSuggestions"> 
    <option class="0" value="lzy">lzy</option> 
    <option class="1" value="lazy">lazy</option> 
    <option class="2" value="Ly">Ly</option> 
    <option class="3" value="Lay">Lay</option> 
    <option class="4" value="Loy">Loy</option> 
    <option class="5" value="lay">lay</option> 
</select> 
<span class="correctWord">dog</span>
</div>

我正在尝试按顺序获取每个跨度和第二个<option>(.1)的内容/值,<select>并将其存储在一个变量中。

在这种情况下,我试图在变量中获取的字符串是“the quick brown Fax jumped over teh lazy dog”

在伪代码中,我会:

  • 遍历#sentence 的所有孩子
  • 检查当前子元素是否属于 .correctWord 类。
  • 如果是,获取它的内容。
  • 如果不是,则获取其第二个孩子的值。
  • 按顺序将内容和值缝合在一起
  • 将新组合的字符串存储在 var 中

如何使用 javascript / jQuery 做到这一点?

4

1 回答 1

2
var str = "";
$('#sentence').children().each(function(){
    if($(this).is('.correctWord')){
      str += " "+$(this).text();
    }else if($(this).is('select')){
     str += " "+$(this).find('option').eq(1).val();
    }
})

演示---> http://jsfiddle.net/8juVe/

于 2013-06-18T22:05:48.613 回答