2012-09-20 3 views
0

Я использую Jquery Tokeninput в своем проекте для отображения некоторых чисел в текстовом поле. У меня есть скрытое поле ввода, в котором я сохраняю строку JSON, содержащую числа. JSON выглядитjquery tokeninput с PHP

patents = [{"id":"AT02708872"},{"id":"DE60232348"},{"id":"EP02708872"},{"id":"SE0101087"},{"id":"SE0200504"}] 

на мой взгляд, скрытый вход

<input id="appln_nrs" type="hidden" value="{{ patents }}" /> 

В ту же точку зрения я прохожу значение этого входа в мой JQuery Tokeninput в

<script type="text/javascript"> 
    $(document).ready(function() { 
     var patents = $("#appln_nrs").val(); 
     //var patents = [{id:"ABC"},{id:"DEF"}]; 
     $("#patents").tokenInput("", { 
      theme:"facebook", 
      prePopulate: patents 
     }); 
    }); 
</script> 

The проблема заключается в том, что JSON содержит только 5 записей с идентификатором и его значением, но когда я нахожусь в представлении, он отображает что-то подобное в текстовом поле Image

Но когда я передаю переменную JSON с жесткой кодировкой, она отображается правильно.

Любая помощь будет высоко оценена.

Благодаря

Редактировать

Когда я использую в моей JavaScript, как

var patents = {{ patents }}; 

это дает мне следующую ошибку синтаксиса

SyntaxError: invalid property id 
    [Break On This Error]  

    var patents = [{&quot;id&quot;:&quot;AT.02708872.T&quot;},{&quot;id&quot;:&quot;... 
+0

Почему вы используете скрытое поле? Можете ли вы опубликовать html сгенерированного скрытого поля? –

+0

Сгенерированное скрытое поле ввода Wearybands

+0

Я использую скрытое поле ввода для передачи патентов от php к моему JQuery – Wearybands

ответ

1

не использую скрытое поле. Просто выполните:

<script type="text/javascript"> 
    $(document).ready(function() { 
     var patents = {{patents|raw}}; 
     //var patents = [{id:"ABC"},{id:"DEF"}]; 
     $("#patents").tokenInput("", { 
      theme:"facebook", 
      prePopulate: patents 
     }); 
    }); 
</script> 
+0

Теперь он ничего не отображает в текстовом поле – Wearybands

+0

Извините, я забыл точку с запятой после '{{patents}}'. Теперь исправлено –

+0

, когда я использую var patents = {{patents}}; и предупреждение (патенты) .. его говорит функция Array() { [собственный код] } – Wearybands

Смежные вопросы