如何填充materialize.css芯片自动完成数据?

时间:2017-01-29 13:24:01

标签: jquery autocomplete materialize

有一个预先写好的值的例子:

$('.chips-autocomplete').material_chip({
    autocompleteData: {
      'Apple': null,
      'Microsoft': null,
      'Google': null
    }
  });

但我需要从包含多个字符串值的数组动态填充值。我试过这样的东西,但它不起作用。

my_data = $.parseJSON(data);                        

$('.chips-autocomplete').material_chip({
    autocompleteData: {
        $.each(my_data, function(index, value) {
            value : null;                           
        });
    }                                                       
});

2 个答案:

答案 0 :(得分:2)

您可以在传递对象之前先创建对象:

<div class="chips chips-autocomplete"></div>

var my_data = {
  "0":"Apple",
  "1":"Microsoft",
  "2":"Google"
}

var myConvertedData = {};

$.each(my_data, function(index, value) {
  myConvertedData[value] = null;
});

$('.chips-autocomplete').material_chip({
  autocompleteData: myConvertedData
});

JSFiddle

答案 1 :(得分:1)

我一直在研究这些具有自动完成功能的芯片。 这是一个片段,可以帮助有需要的其他人。

MySql查询结果转换为JS Chip数组格式:

$database = new Database();
$db_link = $database->connect();

$sql = "SELECT Nombre, Descripcion FROM estudio_componente;";

$gsent = $db_link->prepare($sql);
$gsent->execute();

$result = $gsent->fetchAll(PDO::FETCH_ASSOC);

$return_arr = array();

foreach($result as $row) {
 $componentes[$row['Nombre']] = null    ;
}

echo json_encode($componentes);

结果:

{"Sangre":null,"Orina":null,"Glucemia":null}

enter image description here