Javascript 在缓存中输入文本?
我正在用JavaScript(jQuery)验证一些输入(Javascript 在缓存中输入文本?,javascript,jquery,browser,web,validation,Javascript,Jquery,Browser,Web,Validation,我正在用JavaScript(jQuery)验证一些输入(type=“text”)框 它们位于一个$('')对话框中,当您单击按钮时,该对话框将显示 当我第一次显示对话框时,我的验证代码一切正常: function verifyContactForm() { formValid = true; txtSubject = $('#txtSubject'); txtRoom = $('#txtRoom'); txtMessage = $('#txtMessage');
type=“text”
)框
它们位于一个$('')对话框中,当您单击按钮时,该对话框将显示
当我第一次显示对话框时,我的验证代码一切正常:
function verifyContactForm() {
formValid = true;
txtSubject = $('#txtSubject');
txtRoom = $('#txtRoom');
txtMessage = $('#txtMessage');
if (txtSubject.val() == "") {
formValid = false;
txtSubject.css('border-color', 'red');
}
else
txtSubject.css('border-color', 'lightgray');
if (txtRoom.val() == "") {
formValid = false;
txtRoom.css('border-color', 'red');
}
else
txtRoom.css('border-color', 'lightgray');
if (txtMessage.val() == "") {
formValid = false;
txtMessage.css('border-color', 'red');
}
else
txtMessage.css('border-color', 'lightgray');
return formValid;
}
在用户结束对话框并且所有内容都有效后,它使用ajax调用将数据发送到服务器
现在,当用户第二次打开对话框而不重新加载页面时,在“我的文本”元素中,旧文本仍然存在。文本不会显示在输入框中,但当我使用.val()
选择文本时,它仍然包含旧文本
有人知道为什么会这样吗
我认为这与缓存有关,但我不确定,所以我要问这个问题。在打开对话框或发送数据后调用form\u element.reset()
。此解决方案可以解决问题
主要的问题是,如果您没有正确地关闭对话框并将其从DOM中删除,您将遇到一些问题
此链接显示了我的意思。抱歉,这不起作用。我认为对话没有正确关闭。我在代码中看到旧对话框仍然存在(display:none),但仍然存在。