我试图将我的标签附加到我的li标签,然后将该li添加到消息ID中,但由于某种原因,它似乎无法正常工作。
当我将message.url附加到#messages时,它会很好地打印到屏幕上,但是当我将var a附加到屏幕时它不会显示出来。我不太确定发生了什么,我已经尝试过我能想到的一切。
socket.on('newLocationMessage', function (message) {
var li = $('<li></li>');
var a = $('<a target="_blank"><My current location</a>');
li.text(`${message.from}: `);
a.attr('href', message.url);
li.append(a);
$('#messages').append(li);
});
答案 0 :(得分:0)
这是一种在没有 .text 或 .attr 的情况下解决问题的简单方法。 如果您可以在此处提供示例代码(HTML),那将会很有帮助。
// find elements
var button = $("button");
// handle event like newLocationMessage event
button.on("click", function() {
//replace your data
let message = {
url: "https://google.com",
from: "Google"
};
var li = $('<li><a target="_blank" href="' + message.url + '">' + message.from + '</a></li>');
$('#messages').append(li);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<ul id="messages"></ul>
<button>
trigger
</button>
答案 1 :(得分:0)
它有一个额外的&lt;在我当前的位置旁边!
socket.on('newLocationMessage', function (message) {
var li = $('<li></li>');
var a = $('<a target="_blank"><My current location</a>');
li.text(`${message.from}: `);
a.attr('href', message.url);
li.append(a);
$('#messages').append(li);
});