2013-04-03 37 views
0

我有以下脚本编写:如何显示选择选项的标签?

http://jsfiddle.net/rgf8K/

它的工作方式是,你选择你的出生月份和喜爱的颜色,那么就应该为你提供你的“名人名。”

现在编写脚本的方式是错误的...因为输出不显示所选选项值的选项标签。如果这个人选择月份为月份而绿色为颜色,我希望输出结果如下:您的名人名字是琳达格林。

如何显示所选标签选项的标签?非常感谢!!同样

<select id="month"> 
     <option value="">- birth month -</option> 
     <option value="Linda">January</option> 
     <option value="Chris">February</option> 
     <option value="James">March</option> 
    </select> 

的颜色:

HTML

<form> 
    <select id="month"> 
     <option value="">- birth month -</option> 
     <option value="January">January</option> 
     <option value="February">February</option> 
     <option value="March">March</option> 
    </select> 
    <label class="January" for="January">Linda</label> 
    <label class="February" for="February">Chris</label> 
    <label class="March" for="March">James</label> 


    <select id="color"> 
     <option value="">- favorite color -</option> 
     <option value="Green">Green</option> 
     <option value="Blue">Blue</option> 
     <option value="Red">Red</option> 
    </select> 
    <label class="Green" for="Green">Roberts</label> 
    <label class="Blue" for="Blue">Blue</label> 
    <label class="Red" for="Red">Unger</label> 
</form> 

    <p id="output"></p> 

jQuery的

$("#month, #color").change(function() { 
    var month = $("#month").val(); 
    var color = $("#color").val(); 
    var content = ''; 
    if (month && color) { 
     content = 'Your celebrity name is ' + month + ' name ' + color + ' name'; 
    } 
    $("#output").text(content).fadeIn(); 
}); 
+2

我不认为我”曾经见过这样的标签。 – isherwood

+0

这应该是根据所选颜色在DOM中选择正确的标签。你尝试过那样的事吗? –

+0

使用数组而不是奇怪的标签系统,你有 – charlietfl

回答

0

你可以改变你的选择的价值属性。

<select id="color"> 
     <option value="">- favorite color -</option> 
     <option value="Roberts">Green</option> 
     <option value="Blue">Blue</option> 
     <option value="Unger">Red</option> 
    </select> 

然后删除标签,它应该按预期工作。

0

,因为你有一个月的值类名来选择,你可以试试这个:

变化:

var month = $("#month").val(); 
var color =$("#color").val(); 

到:

var month = $('.'+$("#month").val()).text(); 
var color = $('.'+$("#color").val()).text();