2010-01-05 21 views
1

我有一个如下所示的选择框。我想打印出选择框中的逗号分隔值每个项目的姓名和电子邮件地址,像使用JQuery将列表框的内容打印为逗号分隔值

Tom Wayne,[email protected] 
Joe Parker,[email protected] 
Peter Simons,[email protected] 

任何方式来完成,使用JQuery的?

<select multiple="multiple" name="search_results"> 
<option value="[email protected]">Tom Wane</option> 
<option value="[email protected]">Joe Parker</option> 
<option value="[email protected]">Peter Simons</option> 
</select> 

谢谢

回答

2

试试这个:

$("select").each(function() { 
    var options = []; 
    $(this).children("option").each(function() { 
     var $this = $(this); 
     options.push($this.text()+ "," + $this.val()); 
    }); 
    alert(options.join("\n")); 
}); 

这将提醒您为每个单独选择的选项。

0

事情是这样的:

var s = ""; 
$("select option").each(function() 
{ 
    var $option = $(this); 
    s += $option.text() + ", " + $option.val() + "\n"; 
}); 

alert(s); 
10

我认为是使用Traversing/map一个很好的例子:

$('select option').map(function() { 
    return $(this).text() + ',' + $(this).val(); 
}).get().join('\n'); 
+0

+1地图的'尼斯使用()'! – James 2010-01-05 15:38:53

+0

为什么map()返回Jquery对象?你有没有在地图之后不使用get的例子? – 2010-01-05 15:41:30

+0

感谢您对CMS的回复。但是,代码只是输出名称而不是电子邮件地址! – Scott 2010-01-05 16:00:55

相关问题