我有一个JavaScript函数,在单击html按钮时运行。如果在函数中发生错误,我会显示一个错误,这个错误只是一个动态添加文本的html div,通常会隐藏,直到发生错误。我想在错误显示之前(在div之前)动态添加换行符(br)。
我的问题是,如果用户不断点击按钮并且错误不断发生,则页面会填满换行符,页面的其余部分会向下移动。所以休息时间复杂化,永不消失。这是JavaScript,它将错误文本动态地添加到div中,并在它之前添加换行符。
$('#sku-upc-error').html(jqXHR.responseText).before("<br />");
这是显示错误的html。
<div class="error-display" id="sku-upc-error"></div>
我可以动态隐藏或删除div,当错误没有发生但换行仍然存在时。比如这样:
$("#sku-upc-error").hide();
有没有办法删除换行符?或者更好的方法是在错误div之前添加中断,以便它们不会停留在页面上并在错误不断发生时复合?
答案 0 :(得分:0)
你可以,这是一个巧妙的小技巧。
当您添加换行符时,会像这样添加一个类...
$('#sku-upc-error').html(jqXHR.responseText).before("<br class='break' />");
然后,当您运行代码以隐藏错误消息时,请在其后面直接包含此代码以删除换行符。
$(".break").remove();
尝试一下,让我知道你是怎么做的。如果需要,您也可以使用.hide()
,但这会将它们全部从DOM中删除,而不是隐藏它们,但将它们保留在标记内。