Jquery 通过逗号分隔将字符串转换为数组

Jquery 通过逗号分隔将字符串转换为数组,jquery,ruby,ajax,ruby-on-rails-4,Jquery,Ruby,Ajax,Ruby On Rails 4,以下是通过ajax调用传递给rails控制器的参数 Parameters: {"selectedpos"=>"[\"55f188e9f8e6c2616f00006e\",\"55f17bc5f8e6c2616f00004a\"]", "id"=>"55f24b81f8e6c214d5000014", "_"=>"1441942399695"} Ajax调用: var purchaseorders = $('#purchaseorders option:selected');

以下是通过ajax调用传递给rails控制器的参数

Parameters: {"selectedpos"=>"[\"55f188e9f8e6c2616f00006e\",\"55f17bc5f8e6c2616f00004a\"]", "id"=>"55f24b81f8e6c214d5000014", "_"=>"1441942399695"}
Ajax调用:

var purchaseorders = $('#purchaseorders option:selected');
    var selectedpos = [];
    $(purchaseorders).each(function(index, brand){
        selectedpos.push($(this).val());
    });
    $.ajax({
      url: '/getpurchaseorder_data' ,
        type: "GET",
          data: { selectedpos:JSON.stringify(selectedpos), id: '<%= @invoice._id %>'},
          dataType: 'script'
    });
var purchaseorders=$(“#purchaseorders选项:选中”);
var selectedpos=[];
$(采购订单)。每个(功能(索引、品牌){
selectedpos.push($(this.val());
});
$.ajax({
url:“/getpurchaseorder_data”,
键入:“获取”,
数据:{selectedpos:JSON.stringify(selectedpos),id:'},
数据类型:“脚本”
});

在rails控制器中,selectedpos现在被视为字符串,需要将这些字符串转换为po ID数组。

您可以使用如下拆分功能:

var str = "How are you doing today?";
var res = str.split(" ");
res的结果将是一个包含以下值的数组:

你今天好吗


在您的情况下,根据问题的标题,它是逗号而不是空格

通过逗号分隔将字符串转换为数组

您可以使用方法:

> string = "This,is,my,sample string"
> string.split(',')
#=> ["This", "is", "my", "sample string"]

为什么要在JavaScript中手动
JSON.stringify(selectedpos)
?除了muistooshort的评论:如果不
JSON.stringify
数组,而是传递
数据:{selectedpos:selectedpos,id:'}
?>字符串=“[\'55f188ef8e6c2616f0006e\,\'55f17bc5f8c2616f0004a\””这整个部分就是我们所做的。。?