Почему я не могу получить значение ключа в моей строке, он продолжает принимать значение + ключ + - PullRequest
0 голосов
/ 25 апреля 2019

Я пытаюсь создать HTML-таблицу с использованием JavaScript.Я пытаюсь добавить данные в таблицу, и некоторые данные являются ссылками URL.Я пытаюсь объединить ссылки с переменными, но вместо значения переменной в строке I я получаю + ключ + значение.Может кто-нибудь, пожалуйста, сообщите мне о том, что я делаю неправильно, пожалуйста,

javascript ниже

function populateTable(){
$.ajax({
  method: "GET",
  url: endpoint,
  success: function(data){
    console.log(data)
    $("#stats tr").remove();
    var table_data ='';

    for (var key in data){
      table_data += '<tr>';
      table_data += '<td><a href = "{% url 'webapp-graphv2' '+key+'%}">Link</a></td>';
      table_data += '<td>' +key+ '</td>'
      table_data += '<td>' +data[key].EUR.PRICE+ '</td>';
      table_data += '<td>' +data[key].EUR.HIGHDAY+ '</td>';
      table_data += '<td>' +data[key].EUR.LOWDAY+ '</td>';
      table_data += '<td>' +data[key].EUR.MKTCAP+ '</td>';

      if (data[key].EUR.CHANGEPCT24HOUR[0] == '-') {
        table_data += '<td style = "color:red">' +data[key].EUR.CHANGEPCT24HOUR+ '</td>';
      } else {
        table_data += '<td style = "color:green">' +data[key].EUR.CHANGEPCT24HOUR+ '</td>';
      }
      table_data += '</tr>';
    }
    $('#stats').append(table_data);
    },
  })
  setTimeout(populateTable,1000);
}


Где я думаю, что ошибка ниже



table_data += '<td><a href = "{% url 'webapp-graphv2' '+key+'%}">Link</a></td>';

Ответы [ 3 ]

0 голосов
/ 25 апреля 2019

Вам нужно уйти от кавычек, окружающих webapp-graphv2:

table_data += '<td><a href = "{% url \'webapp-graphv2\' ' + key + '%}">Link</a></td>';

Также можно использовать литерал шаблона для полной строки:

table_data += `<td><a href = "{% url 'webapp-graphv2' ${key} %}">Link</a></td>`;
0 голосов
/ 25 апреля 2019

вместо table_data += '<td><a href = "{% url \'webapp-graphv2\' '+key+'%}">Link</a></td>';. Вы убегали от своей самой внешней '.

Чтобы избежать подобных проблем, вы также можете объединить строку в JavaScript, например:

table_data += `<td><a href = "{% url 'webapp-graphv2' '${key}'%}">Link</a></td>`

Использование ${var} внутри обратных галочек `${var}` вводит переменную без использования ' или ".

0 голосов
/ 25 апреля 2019

попробовать:

table_data += '<td><a href = "{% url \'webapp-graphv2\' '+key+'%}">Link</a></td>';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...