我正在學習jQuery,並且在試圖找出如何選擇多維數組中的元素時遇到問題。我有一個包含數據庫ID的選擇列表,我想根據所選的ID在數據庫中設置一個帶有成本字段的var。除了將選定的ID轉換爲成本之外,我擁有所有的作品。請有人能幫助我解決這個問題嗎?jQuery grep返回多維數組
var rangeListData = [{"idrange_list":"1","range_cost":"0","target_range_name":"Self Only"},{"idrange_list":"2","range_cost":"1","target_range_name":"1 Space"},{"idrange_list":"3","range_cost":"2","target_range_name":"2 Spaces"},{"idrange_list":"4","range_cost":"3","target_range_name":"3 Spaces"},{"idrange_list":"5","range_cost":"4","target_range_name":"4 Spaces"},{"idrange_list":"6","range_cost":"5","target_range_name":"5 Spaces"}];
$('#slctPowerTarget').change(function() {
var targetID = $('#slctPowerTarget').val();
var cost $.grep(rangeListData, function(e) { return e.idrange_list == targetID }); // this is the line that is wrong
$('#spanTotalEffectsCost').text(cost);
});
如果我把targetID放在哪裏,那它的成本就很好。但是當我試圖查看這件事時,沒有任何反應。這是不正確的,我不知道還有什麼可以嘗試。我想我得到idrange_list == targetID應該如何匹配它們,但不知道如何調用相關的range_cost。
感謝您提供的任何幫助!我閱讀了jquery.com上的文檔,但似乎無法將我的頭圍繞在他們身上。
非常好!這個伎倆。我發現我忘記從篩選出的對象中選擇我需要的東西。由於它有很多對象,而不僅僅是一個標準的數組。我需要找到對象,然後找到我需要的對象。它似乎是jQuery中的兩個步驟。我也看到你加了===這也是一個很好的電話。感謝幫助我的睡眠,通過這種新的語言,剝奪了我的頭腦! – user1518699
很高興幫助! –