2012-10-22 63 views
0

我有一個字符串中的列表框選項的CSV值,我該如何解析值和文本分開?解析jQuery中的CSV選項值?

這裏是我的字符串:

[<option value=​"Employee_OID">​Portal EID​</option>​, <option value=​"EmpID">​Emp ID</option>​, <option value=​"Employee_Name">​Name​</option>​] 

回答

2

如果這是你的整個字符串,可以去掉括號外,然後分裂的逗號獲得元素的數組。然後,您可以把它們變成jQuery的對象在一個循環,並獲得價值/文本(你也可以做它使用常規的JS)

var data = '[<option value="Employee_OID">Portal EID</option>, <option value="EmpID">Emp ID</option>, <option value="Employee_Name">Name</option>]';​​​​​ 

data = data.replace('[','').replace(']','').split(','); 

$.each(data,function(i,v){ // loop through each option 
    console.log("Value = " + $(v).val()); // gets option value 
    console.log("Text = " + $(v).text()); // gets option text 
}); 

http://jsfiddle.net/wirey00/W2dUb/

由於@Kevin說,你可以使用正則表達式也

data = data.replace(/(\[|\])/g,'').split(','); 
+1

或'data.replace(/(\ [| \])/ g,'')。split(',')' –

+0

@KevinB ahh .. regex .. my weakness !!謝謝,我把它添加到我的答案 –

+0

我想你也可以跳過.replace,並使用基本的字符串操作(我沒有太多的經驗)刪除字符串的第一部分和最後一部分。 –