Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 表单提交后重置Html表单,并防止用户返回并查看提交的数据_Javascript_Jquery_Html_Asp.net Mvc_Http - Fatal编程技术网

Javascript 表单提交后重置Html表单,并防止用户返回并查看提交的数据

Javascript 表单提交后重置Html表单,并防止用户返回并查看提交的数据,javascript,jquery,html,asp.net-mvc,http,Javascript,Jquery,Html,Asp.net Mvc,Http,在HTML页面上,当我提交HTTP POST时,它会重定向到另一个页面 在重定向页面上,用户可以通过点击浏览器的后退按钮返回表单页面并再次查看提交的值。这不是什么大问题,但请考虑以下情况: 一个用户去一家公共网吧用信用卡买东西 卡片然后离开网吧,忘记关闭浏览器。 下一个用户来到那张桌子前,按下“后退”按钮,砰的一声 一个对互联网一无所知的用户可能会将这一行为归咎于该公司 我想做的是在表单提交后重置HTML表单,防止用户返回并查看提交的数据 我可以使用一个简单的JavaScript代码来实现这一点

在HTML页面上,当我提交HTTP POST时,它会重定向到另一个页面

在重定向页面上,用户可以通过点击浏览器的后退按钮返回表单页面并再次查看提交的值。这不是什么大问题,但请考虑以下情况:

一个用户去一家公共网吧用信用卡买东西 卡片然后离开网吧,忘记关闭浏览器。 下一个用户来到那张桌子前,按下“后退”按钮,砰的一声

一个对互联网一无所知的用户可能会将这一行为归咎于该公司

我想做的是在表单提交后重置HTML表单,防止用户返回并查看提交的数据

我可以使用一个简单的JavaScript代码来实现这一点。例如,如下所示:

<script>
    $("input[type='text']").val(null);
</script>

$(“输入[type='text']”)val(null);
但是,可以禁用JavaScript

我正在ASP.NETMVC上开发这个应用程序,但我不认为有任何方法可以在服务器端解决这个问题


有什么想法吗?

如果情况与您的示例相同,我的建议是不要自己处理信用卡信息。有各种各样的支付服务(paypal和其他)都有安全处理数据的小工具和API

此外,如果您担心处理敏感用户数据,首先应该始终使用SSL(https)。其次,可以使用操作方法上的OutputCacheAttribute告诉浏览器忘记原始表单数据:

[OutputCache(NoStore = true, Location = OutputCacheLocation.None)]
public ActionResult SomeAction() { }

不要为此使用javascript。

即使清除表单字段,它们的值也将作为自动完成条目传递。您可以通过关闭自动完成来停止此操作:

<form autocomplete="off" ...>


我知道这是由Internet Explorer和Firefox支持的HTML4,并且在HTML5规范中。

我需要自己处理信用卡数据。我别无选择。但是,缓存控制提示很有用。我认为JavaScript也是如此。
无缓存
可能是你最好的选择。你真的确定可以保证用户信用卡信息的安全吗?这不是一件容易的事!我永远不会与一个自己处理我的信用卡信息的网站做生意……好吧,
缓存控制:没有缓存,没有存储
在chrome上是没有用的。好吧,让我告诉你情况:我们正在与一家土耳其银行合作,他们有一个REST服务,可以接受请求。我不在我的服务器上存储信用卡信息,我只是通过银行获得身份验证。我不知道你所说的“我永远不会与一个单独处理我信用卡信息的网站做生意……”是什么意思。我还有别的选择吗?哇!我好久不知道这件事了!:)Thnx!哦,天哪。我真的希望这些知识不要传播得太快。我不想再一个字符一个字符地输入我的个人信息…@marjannema-开发者应该知道这些属性。我们都长大了,可以决定什么时候使用它们,什么时候不合适。例如,我不希望在用于输入我的Facebook状态的字段上自动完成,但我希望在询问我姓名的字段上自动完成。@Sohnee:我同意你的看法,只是我看到这种知识被滥用了太多。思考:禁用后退按钮,防止右键点击链接。在某些情况下,它是合适的,但不幸的是,也有许多情况下,可能的东西被用于错误的原因。