隐藏元素并防止访问者进行代码操作

Hide element and prevent code manipulation from visitor

我想隐藏一个 HTML 元素。我将 element.hide() 与 Jquery 一起使用,但现在我意识到它只将属性设置为 display:none。我网站的访问者可以很容易地调查 HTML 元素并删除此属性以再次显示该元素,不是吗?我不想这样,我该怎么做才能防止代码操纵?

你可以

element.remove()

但您必须存储一些东西(尝试深入 window?或 cookie?)但它并没有 100% 解决 - 因为有经验的客户可以在任何地方找到它,如果他愿意的话。或者你可以 element.remove - 如果你需要追加那个元素 - ajax 到服务器并得到它了吗?)

通常这应该由服务器端代码而不是客户端来完成。 要向用户删除带有 javascript 的 div,您可以将其分离。分离从 DOM 中删除元素,但将其保留在内存中:

p = $( "p" ).detach();

稍后您可以使用

重新添加它
$('body').append(p);

有关更多信息,请参阅 jQuery 分离: http://api.jquery.com/detach/

经验丰富的黑客无论如何都可以自己创建元素,即使您已将其删除。您应该检查服务器端是否允许此人填写表格。