我是一位经验丰富的开发人员,对 Jquery 不熟悉。我遇到了一个问题,我的代码在链接在一起时有效,但在分开时无效,我想了解 Jquery 行为。
我有一个<div>
带有 4 个按钮的按钮。当按下 4 个按钮中的一个时,我需要所有 4 个按钮都消失并用一个新按钮替换它(新按钮是一个与按下的按钮具有相同值但具有不同 CSS 以使其看起来不同的按钮)
按下按钮时,我<div>
像这样清除
$(this).parent().empty();
然后我建立了我想插入的新按钮
var splitstr = event.target.id.split('-');
var pick = splitstr[0];
var position_id = splitstr[1];
var singlebutton = '<button class="pick' + pick + ' pickbutton-box btn btn-primary btn-large madepick" name="pick" ' + 'id="made'+ position_id + '" ' + 'value="' + pick + '">' + pick + '</button>';
然后我尝试将其重新插入父级:
$(this).parent().append(singlebutton);
当我这样做时,所有 4 个按钮<div>
都被删除,但没有添加新按钮。但是,如果我在做空和追加之前建立字符串
var singlebutton = " ---- HTML CODE for button ---- "
$(this).parent().empty().append(singlebutton);
一切都按预期工作。这对我来说似乎没有任何意义。有人可以解释发生了什么。