正确处理表单选择列表以重写URL

时间:2011-02-07 14:16:44

标签: php javascript html accessibility

我有一个主页规范,需要两个小表单,每个表单都有一个<select>,允许用户选择多个“主题”或“标签”中的一个,然后转到一个看起来像{的网址{1}}或http://example.com/subjects/selected-subject。在内部,这些重写的URL实际上是http://example.com/tags/selected-tag

如果不是重写的URL,我会从表单中直接进行GET。但是,我现在正在寻找以可访问的方式实现这些方法的最佳实践方法。

我的第一个想法是做一个post-redirect-get来简单地将表单字段翻译成一个美化的URL,但我想知道是否有另一种方法可以做到这一点,而不需要中间重定向页面。

我的直觉告诉我使用PRG,但我想知道是否可以使用javascript正确完成。出于可访问性原因,我宁愿不绑定http://example.com/index.php?view=tags&id=selected-tag <select>来加载目标页面。如果我改为绑定onchange <submit>来更改onclick而不是真正提交表单,它仍然可以访问吗?

1 个答案:

答案 0 :(得分:1)

最好实施两者。使用window.location.href重定向用户javascript更快。对于禁用了javascript的用户,表单仍然可以通过PRG工作。