2013-11-15 121 views
1

我試圖在使用角度的隱藏輸入中傳遞值數組。這是我到目前爲止的代碼:在隱藏輸入中傳遞數組

<input type="hidden" name="drug[drug_class_ids][]" value="{{selectedDrugClassIds()}}"/> 

其中

$scope.selectedDrugClassIds = function() 
{ 
    var selected_drug_class_ids = []; 
    for (var x in $scope.selected_drug_classes) 
    { 
     selected_drug_class = $scope.selected_drug_classes[x]; 
     console.log(selected_drug_class); 
     selected_drug_class_ids.push(selected_drug_class.id); 
    } 

    return selected_drug_class_ids; 
}; 

但是,這是給我的不正確

"drug_class_ids"=>["[15,5,8]"] 

,我需要

"drug_class_ids"=>["15", "5", "8"] 

任何想法如何我可以修復這個?

+0

您是否在爲您的服務器使用PHP?如果你是,'json_decode'會起作用。 –

+0

不,我正在使用導軌 – Rob

回答

1

Got it!

這是一個有趣的一個:

<div ng-repeat="drug_class in selected_drug_classes"> 
     <input type="hidden" name="drug[drug_class_ids][]" value="{{drug_class.id}}"/> 
    </div> 
+0

由於它全部隱藏,這裏的目的是什麼?將字段添加到驗證對象? – Olivvv

0

我想這是因爲角度存儲陣列作爲隱藏字段的字符串,而不是實際的數組。所以只需將它串化爲JSON並在後端解碼即可。