suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript - 一个页面可以有多个表单么

多个表单同时提交。在一个页面里

PHP中文网PHP中文网2817 Tage vor438

Antworte allen(7)Ich werde antworten

  • PHPz

    PHPz2017-04-10 17:46:43

    可以的,每个表单都有一个submit方法,可以写一个按钮,监听click事件,然后逐个调用form的上传方法

    部分代码示例:

    var forms = document.forms;
    for(var i=0,j=forms.length;i<j;i++){
        forms[i].submit()
    }
    

    Antwort
    0
  • 高洛峰

    高洛峰2017-04-10 17:46:43

    一个页面是可以有多个表单的,但是表单不允许嵌套

    Antwort
    0
  • 怪我咯

    怪我咯2017-04-10 17:46:43

    当然可以,比如sf的登录页面,不就是一个注册区表单和一个登录区表单吗。根据需求来吧。

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-04-10 17:46:43

    可以的,每个表单的提交都都可以设置不同的地址。

    Antwort
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 17:46:43

    这个是肯定可以的,表单只是html中的一部分,你可以将它理解为p一样,只不过p是结构,可以循环嵌套,而form则相当于一个整体,他们可以共存,但是不能相互嵌套,因为那样在逻辑上就乱了。

    如果你将整个页面比如故宫,那么form可以是宫殿,p和p等标签可以是围墙,围墙可以围着围墙,但是宫殿只能相互独立

    Antwort
    0
  • 巴扎黑

    巴扎黑2017-04-10 17:46:43

    我猜测题主想问的是如何在一个页面多表单提交不刷新页面,其他表单填写的内容不丢失。

    满足这个需求,最简单的当然是用js来提交,监听所有表单的submit事件,然后阻止掉默认,如有表单的嵌套(极不推荐,虽然浏览器能正常工作)再阻止掉冒泡,再然后用ajax或者fetch的方法提交表单。

    曾经做ajax的无刷新上传文件的时候还弄过clone一个iframe出来提交表单,也是一种思路。

    举个小例子。
    https://jsfiddle.net/e1crpnnz/

    Antwort
    0
  • 迷茫

    迷茫2017-04-10 17:46:43

    1. 一个页面里有多个表单没问题

    2. 多个表单同时提交,没想到有什么地方会有这样的需求。如果多个表单同时提交的话,恐怕要用 ajax 提交了

    Antwort
    0
  • StornierenAntwort