为什么要使用<;表格>;使用jquery

为什么要使用<;表格>;使用jquery,jquery,html,ajax,forms,Jquery,Html,Ajax,Forms,如果我正在编写一个应用程序,其中我可以规定用户必须拥有一个启用javascript的现代浏览器,那么使用html标记的好处是什么 例如,如果我通过这样做提交所有“表单”,但实际上我的html中没有任何表单标记。我只是构建了一个datalist来传递$.ajax调用的数据参数 $('#submit_form').click(function(){ var datalist='foo='+$('#foo').val(); $.ajax({ // ajax json here

如果我正在编写一个应用程序,其中我可以规定用户必须拥有一个启用javascript的现代浏览器,那么使用html标记的好处是什么

例如,如果我通过这样做提交所有“表单”,但实际上我的html中没有任何表单标记。我只是构建了一个datalist来传递$.ajax调用的数据参数

$('#submit_form').click(function(){
   var datalist='foo='+$('#foo').val();
   $.ajax({
     // ajax json here
   });
}
为什么要在html代码中使用表单标记?我相信可能有一个很好的理由,但前几天一个朋友问我,我不能给他一个很好的理由为什么需要它

  • 如果JavaScript由于“用户已将其关闭”(例如网络中断)以外的原因失败,服务器端回退将导致表单继续工作
  • 将字段逻辑地分组成一个表单将使它们在大多数屏幕阅读器软件中更易于导航
  • 而且 您可以使用HTML5属性,例如“required”(如果此字段为空,则不提交表单)

    
    
    (确保其为有效的电子邮件地址)。 如果没有表单,此属性将不起作用。 使用这段代码,您可以在JS中保存大量代码


    希望我能帮上忙。

    如果您不需要表单,无论是作为备用或序列化数据,还是用于验证,或者表单可以用于的任何其他用途,没有理由使用表单。表单是可选的——除非您特别希望引用表单中的项并像表单一样处理表单,否则您不必使用它们……我能想到的唯一其他原因是,如果验证程序发现表单标记中不包含输入标记,我不确定它们是否会大惊小怪。如果这类事情对你的应用程序很重要,那可能是一个问题。发布文件(
    )不需要
    吗?@DavidHoerster:我认为你可以通过AJAX调用发布文件,而不需要
    元素。然而,出于备用目的,您可能需要一个实际的表单,尽管OP已经指定他要求用户拥有一个启用JS的现代浏览器。1。你能告诉我更多关于网络中断可能扮演的角色吗?2.什么是屏幕阅读器软件?1。例如,用户在火车上,在下载页面时进入隧道。互联网连接中断,JavaScript文件无法下载。2.屏幕阅读器读取内容并描述耳机/扬声器上的UI控件,这样与视觉相关的残疾人士仍然可以使用计算机。感谢您的回复。我了解屏幕阅读器,这是一个很好的观点。告诉我更多有关网络中断的信息。我的意思是,如果一个连接丢失,你也不会在一个不使用javascript的网站上做很多事情。根据您的经验,您是否建议始终使用表单,即使我可以通过不使用表单来节省一些时间。如果网络暂时丢失,那么它可能会破坏加载文件的尝试,如果该文件是JS或CSS,那么,如果站点设计良好,它仍然可用。是的,使用表单,跳过表单不会为您节省大量时间。
    <input type="text" required = required />