【发布时间】:2009-09-17 13:18:13
【问题描述】:
基本上,我有一个表单,其中包含一些对日期敏感的信息。缓存表单的风险在于:
1) 用户可能没有注意到日期错误,只是认为服务器已经加载了他们保存的数据(如果日期正确,它应该加载)。然后他们提交数据并保存到错误的日期。他们直到下一周才注意到,或者当他们因为没有在正确的一周提交表格而被大喊大叫时才注意到。
2) 用户注意到但认为错误是服务器端的。他们从浏览器重新加载表单,而不是提交日期更改表单以获得正确的日期,所有的古怪都随之而来......
所以,我在想,由于所有在服务器端处理缓存的尝试似乎对这种情况的影响很小,也许有更聪明的方法......
这两种想法都基于这样的假设:如果输入表单为空(无值),浏览器只使用缓存数据。那么第一个问题,这是真的吗?
如果是,我想知道这些想法中哪个更有效:
1) 服务器脚本只是将所有输入设置为 0。然后我有一个 js 脚本,在页面加载时将所有输入设置为 0 为“”。 (0 永远不会是一个可能的条目,以防引发任何铃声)。
2) 不理会服务器脚本,只需让上面提到的 javascript 遍历每个输入,并将输入的 value() 更改为输入的 attr("value")。因此,如果它不存在,则将其设置为空白。
我对浏览器缓存的理解有什么缺陷吗?这两种方法会更好吗?
第二个想法的示例:
$("input :text").val(function() {
realval = (!($this).attr("value")) ? 0 : $(this).attr("value");
return realval;
});
【问题讨论】:
标签: jquery validation forms caching