有了JavaScript和AJAX,我还需要HTML吗<;表格>;标记,我是否仍需要使用“提交”将表单提交到服务器;提交;按钮
当我学习HTML时,CGI是王者,与服务器交互的正确方式是将有了JavaScript和AJAX,我还需要HTML吗<;表格>;标记,我是否仍需要使用“提交”将表单提交到服务器;提交;按钮,javascript,jquery,html,ajax,forms,Javascript,Jquery,Html,Ajax,Forms,当我学习HTML时,CGI是王者,与服务器交互的正确方式是将标记放在标记中。当用户按下“提交”按钮时,HTTP GET或HTTP POST消息被发送到服务器,浏览器使用服务器上CGI程序返回的HTML代码进行刷新 现在我又开始做网络工作了,我一直在学习JavaScript和jQuery。既然jQuery可以截获诸如单击、按键、和聚焦输出,并且可以使用$.ajax()和$.getJSON()读取数据,那么还需要使用标记吗 如果我想支持那些关闭了JavaScript的用户,也许“真正的表单”仍然是必
标记放在
标记中。当用户按下“提交”按钮时,HTTP GET或HTTP POST消息被发送到服务器,浏览器使用服务器上CGI程序返回的HTML代码进行刷新
现在我又开始做网络工作了,我一直在学习JavaScript和jQuery。既然jQuery可以截获诸如单击
、按键
、和聚焦输出
,并且可以使用$.ajax()
和$.getJSON()
读取数据,那么还需要使用
标记吗
如果我想支持那些关闭了JavaScript的用户,也许“真正的表单”仍然是必需的?如果您使用的是ajax,只要您没有任何直接的POST或GET,就不需要表单标记。然而,它仍然是很好的html设计。表单仍然可以帮助您,但简短的回答是不,不是真的 如果您有一组与某个AJAX请求相关的输入,那么为了验证/序列化的目的,以自己的形式保存它们可能会更容易。例如:
$.ajax({
url: 'ajax/test.html',
dataType: 'json',
method: 'POST',
content: $('form#login_form').serialize(), // <-- Serialize elements only in
success: function(data) { // the login_form container.
$('.result').html(data);
}
});
$.ajax({
url:'ajax/test.html',
数据类型:“json”,
方法:“POST”,
内容:$('form#login _form')。serialize(),//您可以同时执行这两项操作,提交或不提交。这取决于您要侦听哪个表单元素以进行更改。但您可以执行以下操作,例如:
<SELECT NAME="tree" onchange="doSomething( someVar );">
但是,这要取决于你想操纵的页面的哪个元素。
你应该把JavaScript看作是表示层的“额外”,而不是HTML标准的替代。是的,你可以使用JavaScript行为代替DOM行为。但是,就像在45英里范围内驱动90MPH一样,你真的不应该。关于不引人注目的JavaScript的文章了解更多信息:如果我能总结到目前为止的答案,听起来标签似乎只有在序列化表单中的元素时才有必要。但更深入地思考,听起来“单页”之间有区别GMail和Google Maps等网站,以及Amazon.com等多页面网站。我可以看到多页面网站使用表单的价值,但“单页面”网站最好使用纯JavaScript,而不使用表单,尽管使用JavaScript异步提交表单可能不会有什么坏处。