与其以名称 ID 为目标,不如定位一个随 jquery 递增的 ID


if (valueInput == jsyl) {
var correctBtn = $('<button/>', {
'class': 'btn btn-success buttonCorrect',
'type': 'button',
'id': 'CorrectIdCount'+CBC++
});

请注意 ID,它会递增。不用担心变量,我已经声明了那个变量(全局(。

$('#CorrectIdCount').html(valueInput);

问:如何定位递增的 ID?我尝试了#,只尝试了CBC,如您所见,也尝试了+。知道吗?

由于您希望在创建按钮时更改值,因此无需使用选择器。 您可以在创建按钮时设置 html 值,而不是创建它,将其添加到 DOM 中,然后从 DOM 中选择它...

if (valueInput == jsyl) {
var correctBtn = $('<button/>', {
'class': 'btn btn-success buttonCorrect',
'type': 'button',
'id': "button" + CBC++,
'html': valueInput
});
}

此外,如果您需要添加按钮处理程序,您可以使用刚刚创建的实例,如下所示...

correctBtn.on("click", function() {
// add your click handler here
});

注意

由于我在上面的评论中提到的内容,我将button前缀添加到按钮的 id 中。 某些浏览器在尝试选择ID以数字开头的元素时会失败,因此这将解决该潜在问题,并且只是一个很好的"知道"。

最新更新