javascript - 使用 javascript 优雅地降级 anchor 标签

标签 javascript jquery html graceful-degradation

我目前依靠 anchor 标记在我的网络应用程序上执行 AJAX 请求(使用 jQuery)。例如:

<script type="text/javascript">
    $(document).ready(function() {
        $("#test").click(function() {
            // Perform AJAX call and manipulate the DOM
        });
    });

    <a id="test" href="">Click me!</a>
</script>

但是,如果用户在他们的浏览器中禁用 javascript,这些 anchor 标记几乎就变得无用了。处理这些 anchor 标记的优雅降级的最佳方法是什么?我唯一的选择是将它们全部切换到表单标签内的按钮吗?

编辑:我应该更清楚,并指定我的 AJAX 调用是一个 HTTP POST 到一个 URL,出于安全原因,我不能向正常的 HTTP GET 公开(例如,考虑删除 url "/items/delete/1 ”)。考虑到这一点,我无法将 anchor 的 href 更改为“/items/delete/1”以满足关闭 javascript 的用户,因为它会带来安全风险。

最佳答案

一个选择(我相信我会被否决)是不要打扰那些关闭了 javascript 的人。在 <noscript> 中显示消息标记通知用户您的网站需要 Javascript。

它会影响两类人:那些故意禁用 javascript 并且大概知道如何重新打开它的人,以及那些在旧移动设备上查看您的网站的人。

在您继续花费数小时为他们开发之前,请考虑这些人的重要性。

关于javascript - 使用 javascript 优雅地降级 anchor 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/467255/

相关文章:

c# - jquery 自动完成 asp.net Gridview 中的多个文本框

javascript - 如何让这个 Action 更长而不停顿

javascript - 如何停止函数覆盖 javascript 对象属性并添加新属性?

javascript - Node Jade 意外字符 # expected ` ` , `\n` , `,` , `!` or `=`

javascript - jquery 帮助布局

javascript - 从列表中删除元素列表时,最后剩余的元素不会消失

jquery - HTML 数值输入字段模式。

css - 更少的 css 不透明度 child

javascript - IE8 和 7 上的权限被拒绝错误

javascript - 根据相同形式的其他输入填充标签输入