我有多个隐藏的表单字段,该字段存储有关当前视图的值(例如,如果某些情况,通常隐藏的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中?事实上,这通常在许多网站上进行。如果要更加小心,则显示选项可以存储在每个用户的数据库中,但这是您的选择。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top