2011-05-22 59 views
1

在我的表單中,我有多個字段(隱藏文本框),它們具有相同的名稱(eform_id)。 (例如,我有7個隱藏的文本框,其中包含這樣的值1234,-1235,1236,1237,-1238,-1239,1240 ...如何將列表分成兩個列表

我得到這些值來像這樣我的JS文件。

var eformDetailIds=$("[name=eform_id]").map(function(){ 
    return $(this).val() }).get(); 

現在我的要求就是我有這個eformDetailIds分成兩個列表..(或逗號分隔值的字符串),這樣一個列表包含所有正面的價值觀和第二列表包含所有負值..

這是一個非常緊急的要求,我正在尋求你的幫助。 請幫我合適的公司這解決了我的問題。

Thans提前 -sathya

回答

1

好:

var positives = $.map(eformDetailIds, function(e) { return e >= 0 ? e : null; }); 
var negatives = $.map(eformDetailIds, function(e) { return e < 0 ? e : null; }); 

如果從返回null 「.MAP()」 的回調,那麼什麼都被添加到結果數組。

你也可以用一個簡單的(R)做到這一點for循環:

var positives = [], negatives = []; 
for (var i = 0; i < eformDetailIds.length; ++i) 
    if (eformDetailIds[i] >= 0) 
    positives.push(eformDetailIds[i]); 
    else 
    negatives.push(eformDetailIds[i]); 
} 

如果你想有一個逗號分隔的字符串的形式,只需要調用「加入()」的陣列上:

var strsPositive = positive.join(','); 
+0

非常感謝你Pointy.i會試試這個,讓你知道結果。似乎它會工作..非常感謝你和你的快速回復。 – Satya 2011-05-22 19:00:42