var myList = [];function b" />

обмен данными между приложениями / ld + json и javascript

javascript jquery json-ld

2059 просмотра

1 ответ

153 Репутация автора

У меня есть некоторый код JQuery, который создает массив с именем myList[]. Этот массив появляется в консоли следующим образом: ["2 items", "3items", "so on"]так что эта часть идет хорошо.

<script type="text/javascript">
var myList = [];
function buld myList(){
...
}

Мне нужно перейти myList[]на application/ld+jsonподобное

<script type="application/ld+json">
{
    "@context": "http://schema.org/",
    "@type": "Recipe",
    "recipeIngredients": myList, //this one doesn't work 
}

..

Как я могу передать значения из JavaScript в application/ld+json? Заранее спасибо!

Автор: Aleksandra Chuprova Источник Размещён: 18.07.2016 01:08

Ответы (1)


8 плюса

8088 Репутация автора

Решение

Пожалуйста, попробуйте это:

<script id="myJSONID" type="application/ld+json"></script>

Затем:

var myList = [];

function buildMyList() {
    return ["2 items", "3items", "so on"];
}

$("#myJSONID").text(function() {
    return JSON.stringify({
        "@context": "http://schema.org/",
        "@type": "Recipe",
        "recipeIngredient": buildMyList()
    });
});

Или же:

<script type="text/javascript">
  var myList = [];    
  function buildMyList() {
      return ["2 items", "3items", "so on"];
  }

  var el = document.createElement('script');
  el.type = 'application/ld+json';

  el.text = JSON.stringify({
        "@context": "http://schema.org/",
        "@type": "Recipe",
        "recipeIngredient": buildMyList()
    });

  document.querySelector('body').appendChild(el);
</script>

Демо: https://jsfiddle.net/iRbouh/9po7dtg4/

Примечание: пожалуйста, убедитесь, что вы измените recipeIngredientsна recipeIngredientединственное. (Спасибо @AlexKudryashev).

Автор: Ismail RBOUH Размещён: 18.07.2016 01:11
Вопросы из категории :
32x32