我正在尝试填充JQuery Token Input

var assignUserJson=$('#assignUserJson').val();
console.log(assignUserJson); //[{"id":"1","name":"Andrew"},{"id":"3","name":"John"}]


这是我认为应该使用的两种方式之间的区别:

$('#assignTask').tokenInput('/users/suggest', {prePopulate: assignUserJson}); // doesn't work


这有效:

$('#assignTask').tokenInput('/users/suggest', {prePopulate: [{"id":"1","name":"Andrew"},{"id":"3","name":"John"}]}); // works


这是为什么?我是否应该能够从隐藏的输入字段中获取值并将其传递给tokenInput函数?

最佳答案

在第一种方法中,assignUserJson是字符串,而在第二种方法中,它是数组对象。客观化第一个应该起作用:

$('#assignTask').tokenInput('/users/suggest', {prePopulate: JSON.parse(assignUserJson)});

09-28 05:32