从提交中有条件地跳过表单字段,减少URL杂乱
-
12-09-2020 - |
题
我有多个隐藏的表单字段,该字段存储有关当前视图的值(例如,如果某些情况,通常隐藏的div是可见的等),以在表单帖子返回时恢复布局。
问题是我始终提交所有这些隐藏的字段,即使它们是默认的,也在过程中生成大量不必要的URL杂乱(例如 http://www.example.com/view?ab=&ac=&ad= 等)。
我宁愿提交只实际影响视图的字段(意义,没有指定的默认值),以便URL杂乱最小。
我试图手动删除/插入输入,但它是一个噩梦。有没有更好的方法来做到这一点?
解决方案
尝试禁用它们 -
“被禁用的控件无法成功。” - http://www.w3.org/tr / html401 / Interact / forms.html#h-17.13.2
其他提示
使用jQuery,您可以在传输之前生成ForiaCodeTagcode这些表单元素。另一种方法可以想到的是删除remove()
。
$('form').bind('submit', function(){
$(this).children('input').each(function(){
if(this.value === this.defaultValue)
$(this).remove();
});
});
. 除非您有一个原因在URL中保留这些选项,为什么不将这些值存储在cookie中?事实上,这通常在许多网站上进行。如果要更加小心,则显示选项可以存储在每个用户的数据库中,但这是您的选择。
不隶属于 StackOverflow