Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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 我需要ajax应用程序中的提交按钮吗_Javascript_Html_Forms - Fatal编程技术网

Javascript 我需要ajax应用程序中的提交按钮吗

Javascript 我需要ajax应用程序中的提交按钮吗,javascript,html,forms,Javascript,Html,Forms,将数据发布到服务器需要一个表单标记 但是,当我使用ajax/jquery时,是否还需要一个“提交”类型的按钮 我是否可以中断按钮单击并执行我自己的ajax请求?不,从技术上讲,如果您想自己序列化POST数据,您甚至不需要表单标记 如果您使用的是Ajax,那么从技术上讲,您不需要表单标签或提交按钮 有了它们,您就可以使用方便的语义元素和逻辑事件来绑定JavaScript JS需要它们(这是一种最佳实践)。不,如果不需要,您不需要提交按钮,甚至不需要按钮。现在,不使用提交按钮是否是个好主意完全取决于

将数据发布到服务器需要一个表单标记

但是,当我使用ajax/jquery时,是否还需要一个“提交”类型的按钮


我是否可以中断按钮单击并执行我自己的ajax请求?

不,从技术上讲,如果您想自己序列化POST数据,您甚至不需要表单标记

如果您使用的是Ajax,那么从技术上讲,您不需要表单标签或提交按钮

有了它们,您就可以使用方便的语义元素和逻辑事件来绑定JavaScript


JS需要它们(这是一种最佳实践)。

不,如果不需要,您不需要提交按钮,甚至不需要按钮。现在,不使用提交按钮是否是个好主意完全取决于应用程序。否。您可以按任何方式触发ajax请求。。单击、更改时模糊。。无论如何……所以我应该使用表单(最佳实践),但我可以使用button类型的按钮(愚蠢…),只需执行e.preventDefault()和我自己的ajax功能,对吗?因此,我唯一不需要使用表单的情况是有一个单页应用程序,它实际上只能使用javascript…你应该使用一个表单和一个常规的提交按钮,并使表单与正常的表单提交操作一起工作,然后通过绑定到表单提交事件的Ajax添加JavaScript,并调用
e.preventDefault()
“如果您想自己序列化POST数据。”您的意思是当我使用JavaScript对象并在其上使用JSON.stringify(数据)时?您当然可以这样做。我的意思是ajax让您能够以任何方式与后端通信。使用postdata发布(您可以构建postdata,或者如果您使用的是jQuery,您可以只使用
.serialize()
)或使用querystring参数发布。您甚至可以使用GET,如果您选择,这取决于您;)