Javascript JQuery,使用动态类创建元素
我正在尝试创建具有动态类值的元素,但迄今为止没有成功。以下是代码:Javascript JQuery,使用动态类创建元素,javascript,jquery,properties,dynamically-generated,Javascript,Jquery,Properties,Dynamically Generated,我正在尝试创建具有动态类值的元素,但迄今为止没有成功。以下是代码: let sender = "alex"; let message = "testMsg"; let time = "15:30"; let msg = $('<span>') .append($('<span>', {class : 'timestamp'}, {text: time})) .append($('<p>', {class
let sender = "alex";
let message = "testMsg";
let time = "15:30";
let msg = $('<span>')
.append($('<span>', {class : 'timestamp'}, {text: time}))
.append($('<p>', {class : sender}, {text: message}));
let sender=“alex”;
让message=“testMsg”;
让时间=“15:30”;
让msg=$('')
.append($('',{class:'timestamp'},{text:time}))
.append($(“”,{class:sender},{text:message}));
结果如下:
<span>
<span id="timestamp"></span>
<p></p>
</span>
这是令人困惑的,因为我读到这种更“优雅”的方式允许变量被用作动态属性。我错过了什么
谢谢
已解决:结果是我尝试为.append()函数指定3个参数。阅读下面的解决方案和解释。您错误地放置了第二个属性(文本)
var$div=$(“”,{class:'myClass',text:'Some text'});
$(“正文”)。追加($div)
.myClass{
背景色:黑色;
宽度:50px;
高度:50px;
颜色:白色;
}
您错误放置了第二个属性(文本)
var$div=$(“”,{class:'myClass',text:'Some text'});
$(“正文”)。追加($div)
.myClass{
背景色:黑色;
宽度:50px;
高度:50px;
颜色:白色;
}
你很接近,以下是我做的一些小改动:
而不是
中插入
,由let sender=“alex”,
message=“testMsg”,
时间='15:30';
让msg=$('')
.附加($(''){
类:“时间戳”,
文本:时间
}))
.append($(“”{
类别:发送者,
文本:消息
}));
$('div').append(msg)
.alex{color:green}
.timestamp{color:red}
你很接近,以下是我做的一些小改动:
而不是
中插入
,由let sender=“alex”,
message=“testMsg”,
时间='15:30';
让msg=$('')
.附加($(''){
类:“时间戳”,
文本:时间
}))
.append($(“”{
类别:发送者,
文本:消息
}));
$('div').append(msg)
.alex{color:green}
.timestamp{color:red}
试试这个:
let sender = "alex";
let message = "testMsg";
let time = "15:30";
let msg = $('<span>')
.append($('<span>', {class : 'timestamp', text: time}))
.append($('<p>', {class : sender, text: message}));
let sender=“alex”;
让message=“testMsg”;
让时间=“15:30”;
让msg=$('')
.append($('',{class:'timestamp',text:time}))
.append($(“”,{class:sender,text:message}));
试试这个:
let sender = "alex";
let message = "testMsg";
let time = "15:30";
let msg = $('<span>')
.append($('<span>', {class : 'timestamp', text: time}))
.append($('<p>', {class : sender, text: message}));
let sender=“alex”;
让message=“testMsg”;
让时间=“15:30”;
让msg=$('')
.append($('',{class:'timestamp',text:time}))
.append($(“”,{class:sender,text:message}));
这段代码中有太多错误,所以我想这不是真正的错误。你能构建一个可运行的代码段吗?请看,您可以使用主题的jQuery,但为什么要使用
let
而不是var
?@DenysSéguret I固定了跨度并添加了“time”变量,只有我能找到错误。这是我正在运行的生成上述结果的代码。这段代码中有太多错误,所以我猜这不是真正的错误。你能构建一个可运行的代码段吗?请看,您可以使用主题的jQuery,但为什么要使用let
而不是var
?@DenysSéguret I固定了跨度并添加了“time”变量,只有我能找到错误。这是我正在运行的代码,以产生上述结果。事实上,它甚至不应该是
(这是因为引擎很松,但无效),而是
@DenysSéguret jQuery documentation@blex ok,这仍然是一个糟糕的做法。它假设浏览器按照您希望的方式解析无效的HTML。[代码段可以工作,但我仍然没有得到任何类。为什么会这样?]没关系,修复了它。谢谢大家。事实上,它甚至不应该是
(这是因为引擎很松但无效),而是
@DenysSéguret jQuery文档@blex ok,这仍然是一个糟糕的做法。它假设浏览器按照您希望的方式解析无效的HTML。[代码段可以工作,但我仍然没有得到任何类。为什么会这样?]没关系,修复了它。谢谢,伙计们。为什么又是一个相同的答案?为什么又是一个相同的答案?