jQuery show()函数在我的浏览器控制台上打印div元素的html内容,而不是在隐藏后显示div元素。
HTML
<div id="fullAmountFail" class="alert alert-danger hide"></div>
的javascript
$('#fullAmountFail').html(message);
$('#fullAmountFail').show();// this prints the var message in my broswer's console
有趣的是,如果我从div中删除.hide类并在页面加载一些javascript时隐藏它,则上面的jQuery按预期工作。那么,怎么了?
答案 0 :(得分:1)
看起来hide
类可能会将display
设置为none
并覆盖!important
。 show()
方法设置内联样式display: block
,它将被!important
表示法覆盖
所以只需删除hide类即可显示元素
var message = 'some content';
$('#fullAmountFail').html(message);
$('#fullAmountFail').removeClass('hide');
&#13;
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/css/bootstrap.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="fullAmountFail" class="alert alert-danger hide"></div>
&#13;