【问题标题】:HTML-Ajax : form with only submitHTML-Ajax : 只有提交的表单
【发布时间】:2016-01-05 05:07:20
【问题描述】:

我有一个按钮,当用户点击这个按钮时,数据库中的数据会被修改。

这两种解决方案之间哪个更安全:

<button id="the_button"> click me </button>

$("#the_button").on("click",function(){
    // send a character to server with Ajax
};

<form method="POST" action="/theurl">
    <input type="submit" value="click me" id="the_button">
</form>

最后,我只有一个按钮。

【问题讨论】:

  • 两种方法都比另一种更安全。

标签: javascript html


【解决方案1】:

没有“最佳”答案。它们是两种不同的方法。

您的第二个选项将导致加载一个全新的页面,而您的第一个选项使用 AJAX 与服务器交换数据,然后只更改页面上的一些信息,没有 改变整个页面。您的第一个选项通常在单页应用程序中用于更改页面上的内容,而无需将用户发送到新页面或重新加载页面。

那么,你想要哪种行为?您想重新加载页面,还是将用户发送到“/theurl”,或者您想在不重新加载的情况下更改页面上的某些信息?

【讨论】:

  • 点击按钮后,用户喜欢一个对象。所以我想点击我的服务器保存这个“喜欢”。当服务器保存这个“like”时,只改变了一个div。
【解决方案2】:

第一个样本

区别在于你的写作方式。

第一种方法允许您将内容与逻辑分开,因此如果您决定明天有不同的行为,您只需修改您的 JS 而不必接触 HTML。

通过这种方式,您可以在应用程序的许多不同部分重复使用 HTML


第二

在第二个示例中,您限制自己每次使用此 html 时调用相同的函数(例如在模板中)并且您不能修改它

【讨论】:

  • 但是第一个样本比第二个更安全?
  • 与安全无关。结果将是相同的,它只是将视图(html)与逻辑(html)分开的更好方法。如果有一天你决定更改 HTML,你也不必更改 JS
  • 好的,谢谢,一开始我担心使用 Ajax 的解决方案不如提交表单安全。
  • 它与安全无关。 :-)
猜你喜欢
  • 2013-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-10
  • 1970-01-01
  • 2020-09-06
  • 2013-04-25
相关资源
最近更新 更多