好的,所以我使用 jQuery ajax() 调用从 php 页面获取响应,以便提交/检查表单。当它成功时,它会返回一个表单元素列表和相应的消息,说明它们有什么问题(例如缺少字段、无效输入等)。
然后,它再次使用 jQuery 循环遍历由 ajax 调用返回的每个表单元素并更改它们的 css(通过 导入) - 例如使元素边框变为红色,以指示该元素的错误。
这工作得很好。但是,假设我提交了缺少字段的表单 - ajax 进行了调用,并且页面的 css 被更改为用红色突出显示该字段。现在假设我解决了该字段的问题(例如,给它提供有效数据)并重新提交,但这次缺少不同的字段。虽然它会正确地为新的缺失字段提供红色边框,但它不会从重新提交时正确的字段中删除红色边框。换句话说,一旦红色边界出现,我就永远无法清除它。
我想我可能需要在 javascript 中做一个“重新加载 css”类型的函数来在 ajax 调用之后重新加载 css ......或者什么?我真的不知道。不过,这似乎应该是一件非常普遍的事情。环顾四周,它看起来可能与缓存页面有关,但我认为我无法控制这类事情。
可能值得一提的是,我正在使用 Less CSS。哈尔普兹?