我正在尝试使用angular传递隐藏输入中的值数组。到目前为止,这是我的代码:
<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 :(得分:1)
知道了!
这是一个有趣的问题:
<div ng-repeat="drug_class in selected_drug_classes">
<input type="hidden" name="drug[drug_class_ids][]" value="{{drug_class.id}}"/>
</div>
答案 1 :(得分:0)
我认为这是因为angular将数组存储为隐藏字段中的字符串而不是实际数组。因此,只需将其字符串化为角度的json,然后在后端对其进行解码。