Javascript modal.style.display不起作用
我在一个模态框上有一个反馈表,它会变成一条信息“谢谢你的反馈!”用户提交后,由于以下代码:Javascript modal.style.display不起作用,javascript,jquery,Javascript,Jquery,我在一个模态框上有一个反馈表,它会变成一条信息“谢谢你的反馈!”用户提交后,由于以下代码: const modal = $(".feedback-modal") modal.html("<div class='modal-content col-sm-8 col-sm-offset-2'><span class='close'>×</span><p>Thank you for your feedback!</p>&l
const modal = $(".feedback-modal")
modal.html("<div class='modal-content col-sm-8 col-sm-offset-2'><span class='close'>×</span><p>Thank you for your feedback!</p></div>");
modal.style.display = 'none'
console.log('OK')
const model=$(“.feedback model”)
html(“×;感谢您的反馈!”;
modal.style.display='none'
console.log('OK')
前两行非常好用。然而,第三种情况并非如此。我希望模态框消失,因此我将de.style.display设置为'none'
,但它不起作用,尽管如果我在浏览器控制台中写入该行,它会起作用。请注意,console.log('OK')
也不会执行
有什么想法吗?这是因为modal
是jQuery对象,因此.style
是未定义的,这会导致脚本崩溃
相反,只需使用jQuery.hide()
方法即可
const modal = $(".feedback-modal")
modal.html("<div class='modal-content col-sm-8 col-sm-offset-2'><span class='close'>×</span><p>Thank you for your feedback!</p></div>");
modal.hide();
console.log('OK')
const model=$(“.feedback model”)
html(“×;感谢您的反馈!”;
modal.hide();
console.log('OK')
是的,这就是问题所在;谢谢你!+我添加了一个SetTimeout函数,使它看起来很好(在2秒后消失)。@JulesCorb我很高兴它能工作,我想说的是,您可能需要一个超时,否则它会在看到新的HTML之前自动消失:)