2010-01-05 84 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