Я новичок в JavaScript, так что извините за этот вопрос, когда я использую jQuery для добавления данных из firebase в таблицу
я хочу добавить кнопку, но имею URL-адрес href из переменной
url_val = это переменный URL-адрес, который я хочу, когда я нажимаю кнопку, чтобы перейти на веб-сайт
$("#data").append("<tr><td>" + title_val + "</td><td><button class='box'> " + url_val + "</button></td></tr>");
я пытался заняться охотой
$("#data").append("<tr><td>" + title_val + "</td><td><a href = "url_val"> <button class='box'> " + GO + "</button></a></td></tr>");
но я не могу добавить переменную внутри есть ли решение для этого
Конкатенация строк ведет себя одинаково независимо. Ваш второй фрагмент неправильно выполняет конкатенацию. Почему вы пытаетесь сделать это по-другому? Ваш первый фрагмент показывает, что вы понимаете, что <string> + variable + <string>
является точным. Так что я не уверен, почему это смущает вас
Вам нужно использовать "
и '
в зависимости от того, что находится снаружи, например var s = "a" + "'" + '"';
— посмотрите, как одинарные кавычки оборачивают двойные, а двойные оборачивают одинарные — так что ваш href concat становится "<a href='" + url_val + "'>";
, чтобы дать href='http://...'
. В SO будет (много) дубликатов, поэтому не дается полный ответ.
Возможный дубликат Когда использовать двойные или одинарные кавычки в JavaScript?
Большое спасибо за вашу долю знаний, теперь все ясно
Я думаю, что вы сделали две ошибки, первая из которых заключается в том, что вы не используете +
для правильного объединения строк, как упоминалось @Taplar и @abney317.
Во-вторых, вы без необходимости удалили 'GO' из своей жестко закодированной строки, но также не сохранили ее как переменную или не объединили ее соответствующим образом.
Я исправил оба из них и предоставил демонстрацию.
Дайте мне знать, если вы надеялись на что-то другое.
// Add click event to add row
$("#addRow").click(function() {
// Store variables
title_val = "Title";
url_val = "www.google.com";
// Append data
$("#data").append("<tr><td>" + title_val + "</td><td><a href = " + url_val + "> <button class='box'>GO</button></a></td></tr>");
});
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table id = "data">
</table>
<button id = "addRow">Add Row</button>
Вам не хватает знаков
+
вокругurl_val
, чтобы правильно объединить строку. Кроме этого, я не уверен, что вы спрашиваете.