我试图防止在可编辑列表项上出现空白输入,我在其他地方使用了相同的代码,但由于某些原因,该代码无法正常工作。
我有:
if(folderName == "" || folderName == " " || folderName.charAt(0) == " "){
$(this).remove();
}
如果我没有输入任何内容,它将删除该项目,但是如果我输入一个空格则不会将其称为删除。
奇怪的是,我在不同的区域使用了完全相同的代码,并且工作正常。
这是全部功能:
$(document).on('focusout', '#folders li', function(){ //add class when lose focus/shorten name if too long
var folderName = $(this).text();
$('#folders li').removeAttr('contenteditable');
$('#folders li').removeClass('active-tab');
$(this).addClass('active-tab');
if(folderName.length > 15){
$(this).attr('title', $(this).text());
shortFolderName=folderName.substring(0,15) + '...';
$(this).text(shortFolderName);
}
else if(folderName.length <= 15){
$(this).text(folderName);
$(this).attr('title', $(this).text());
}
if(folderName == "" || folderName == " " || folderName.charAt(0) == " "){
$(this).remove();
}
console.log(folderName);
})
的HTML:
<div id="tabs">
<ul id="folders">
<li class="active-tab" >All Notes</li>
<li>Work</li>
<li>Personal</li>
<li id="add" class="glyphicon glyphicon-plus"></li>
<ul>
</div>
您也可以使用该.trim()
函数,然后检查字符串的长度。
if(folderName == "" || folderName.trim().length === 0){
$(this).remove();
}
注意:该trim()
函数从字符串的两端删除空格。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句