HTML嵌套表单问题

时间:2011-08-24 19:28:30

标签: javascript html

我正在使用CGI脚本创建一个网页,其中包含用户需要填写的表单。总体布局是:

<form>
textfield (username)
textfield (password)
textfield (email)
submit button
</form>

我想要做的是添加一个按钮,检查他们输入的用户名是否可用。我的问题是我试图这样做的方式是写:

<form>
<form>
textfield (username)
submit button
</form>
textfield (password)
textfield (email)
submit button
</form>

这不起作用,提交按钮改为提交外部表单。以下是我考虑尝试但没有奏效的事情:

  1. 将表单放在第一个表单的末尾。问题:我不知道如何对齐用户名文本字段按钮旁边的“验证”按钮,而不会使其浮动,这会导致页面出现一堆其他问题。

  2. 将值放在提交按钮上,并根据单击的按钮使提交执行不同的操作。问题:根据按下的按钮,我想要发出“POST”请求的网页是不同的。看到我把动作=“mypage.cgi”放在代码的一部分而不是按钮部分,我不知道如何根据我按下的按钮进入不同的网站。

    < / LI>

4 个答案:

答案 0 :(得分:3)

有多个提交按钮,名称不同。检查帖子背面的每一个。

答案 1 :(得分:3)

首先,提供所有表格名称是个好主意 因此,您可以轻松区分表单。

接下来,将onClick连接到每个将调用具有不同参数的函数的按钮:1,2,3。每个按钮都会发送自己的参数。在该功能中,您只需查看参数并提交适当的表格。

<form name='form1'>
....
<button type="button" onClick=doIt(1);>Submit</button>
</form>

<form name='form2'>
....
<button type="button" onClick=doIt(2);>Submit</button>
</form>

<form name='form3'>
....
<button type="button" onClick=doIt(3);>Submit</button>
</form>

<script>
function doIt(formid)
{
   if(formid==1)
   {
      document.form1.submit();
   }
   if(formid==2)
   {
      document.form2.submit();
   }

...
}
</script>

答案 2 :(得分:1)

我用于嵌套表单的方法是使用标记而不是标记, 然后在单击提交按钮时附加表单标记。

我为此编写了一个小JQ插件-'dynaForm',它非常容易实现。 请参阅==&gt; http://anupampdhyy.wordpress.com/2014/09/29/dynaform/

您还可以在以下位置观看相同的演示: https://www.youtube.com/watch?v=CFQia8EsoPQ&feature=youtu.be

我希望这可以帮助您在HTML代码中实现嵌套表单。 :)

答案 3 :(得分:0)

您可能需要进行两种不同的表单操作,这样就不会提交两个完全不同的值。