0

私はLaravelアプリケーションでMaterial Design Tagsを使用しています。素材デザインのブートストラップタグを初期化

<div class="chips chips-placeholder chips-initial"></div> 

私は、データベースに格納された値で、このチップ要素を初期化したい:

["kingfisher", "art"] 

ブレードに、私は以下のよう$art->keywordsを取得しています:

私は割り当てることができますどのように
array:1 [▼ 
    0 => "art" 
] 

この値をjQueryコード以下にするには?

var keywords[] = "{{ json_encode($art->keyword) }}"; 
console.log(keywords); 
$.each(keywords, function(index, value) { 
    alert(index + ": " + value); 
}) 

しかし、その後、私は次のエラー受け取る:このエラーが供給

var keywords = "{{ json_encode($art->keyword) }}"; 
$.each(JSON.parse(keywords), function(index, value) { 
    alert(index + ": " + value); 
}); 

::私もこれを試してみました

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in ["art"]

$('.chips-initial').material_chip({ 
    data: [{ 
     tag: 'Tag 1', 
    }, { 
     tag: 'Tag 2', 
    }, { 
     tag: 'Tag 3', 
    }], 
    }); 

は、私はこれを試してみました

Uncaught SyntaxError: Unexpected token & in JSON at position 1

配列が数値すなわちあればすべては、[1,2,3]

答えて

0
var keywords = '{{ json_encode($art->keyword) }}'; 
if(keywords != 'null'){ 
    var data = JSON.parse(keywords.replace(/&quot;/g,'"')); 
    var option = {}; // my object 
    var options = []; // my array 
    $.each(data, function(index, value) { 
     option = { 
      tag : value 
     } 
     options.push(option); 
    }); 
    console.log(options); 
    $('.chips-initial').material_chip({ 
     data: options, 
    }); 
} 
okです
関連する問題