我有一个类似所有rails表单的rails表单,如果有任何失败,则会出现标准rails错误:
<div id="errorExplanation" class="errorExplanation">
<h2>2 errors prohibited this account from being saved</h2>
<p>There were problems with the following fields:</p>
<ul><li>First Name can't be blank</li>
<li>Number is not a valid credit card number</li></ul>
</div>
但是我在页面上有一些jQuery需要在点击提交时弹出一个微调器:
$(document).ready(function(){
$('#add_account').click(function(){
console.log($('#errorExplanation').length);
$('#spinner').show();
});
});
但是console.log
始终为0,我只需要在页面上没有#errorExplanation
时显示微调器。
console.log
告诉我有0但是有一个所以我猜Rails在加载后在页面上加载这个div。
任何想法如何解决此问题,并且只在页面上真的没有#spinner
时显示#errorExplanation
?
答案 0 :(得分:1)
$(document).ready(function(){
$('#add_account').click(function(){
if(!$('#errorExplanation').length){
$('#spinner').show();
}
});
});
修改强>:
使用.length来计算div的内容。如果0
,则不存在。
编辑: - )