组合多种形式
Combine Multiple Forms
有没有办法把两种形式合二为一呢?就像在提交表单 2 时具有表单 1 值一样。我尝试使用相同的 name
,但没有成功。
<form action='result.php' method='post' name='form' id='form_1'>
<input name='value_1' placeholder='value_1' />
<input name='value_2' placeholder='value_1' />
</form>
<form action='result.php' method='post' name='form' id='form_2'>
<select name='value_3'>
<option value='a'>a</option>
<option value='b'>b</option>
</select>
<button type='submit'>Submit</button>
</form>
我想在按下提交按钮时得到 value_1、value_2 和 value_3。问题是,我不能在第二种形式上使用 form
属性,因为我的第二种形式是在多个页面上使用的模板,存储在一个单独的变量中。反正周围有没有?
我强烈建议您重新构建模板,以便它们可以相互结合使用。
但是,如果模板是固定的,那么您可以使用 javascript 拦截任一表单的提交,从两个表单中获取数据,然后提交一个新表单。
你可以这样做
<form action='result.php?action=form1' method='post' name='form' id='form_1'>
<input name='value_1' placeholder='value_1' />
<input name='value_2' placeholder='value_1' />
</form>
<form action='result.php?action=form2' method='post' name='form' id='form_2'>
<select name='value_3'>
<option value='a'>a</option>
<option value='b'>b</option>
</select>
<button type='submit'>Submit</button>
</form>
在您的 PHP 文件上:
<?php
$action = $_GET['action'];
if($action === 'form1'){
#do something
}else{
#do something
}
找到解决方法。我用 form='parent'
代替 form_2,并把 id='parent'
放在 form_1 中。缺点是现在我必须命名每个表格 id='parent'
...
没试过,我在想如果我把两个表格都用form='parent'
,然后做一个隐藏的<form id='parent>'
,我也许可以组合更多的表格。不完美...但至少可以正常工作 HTML.
有没有办法把两种形式合二为一呢?就像在提交表单 2 时具有表单 1 值一样。我尝试使用相同的 name
,但没有成功。
<form action='result.php' method='post' name='form' id='form_1'>
<input name='value_1' placeholder='value_1' />
<input name='value_2' placeholder='value_1' />
</form>
<form action='result.php' method='post' name='form' id='form_2'>
<select name='value_3'>
<option value='a'>a</option>
<option value='b'>b</option>
</select>
<button type='submit'>Submit</button>
</form>
我想在按下提交按钮时得到 value_1、value_2 和 value_3。问题是,我不能在第二种形式上使用 form
属性,因为我的第二种形式是在多个页面上使用的模板,存储在一个单独的变量中。反正周围有没有?
我强烈建议您重新构建模板,以便它们可以相互结合使用。
但是,如果模板是固定的,那么您可以使用 javascript 拦截任一表单的提交,从两个表单中获取数据,然后提交一个新表单。
你可以这样做
<form action='result.php?action=form1' method='post' name='form' id='form_1'>
<input name='value_1' placeholder='value_1' />
<input name='value_2' placeholder='value_1' />
</form>
<form action='result.php?action=form2' method='post' name='form' id='form_2'>
<select name='value_3'>
<option value='a'>a</option>
<option value='b'>b</option>
</select>
<button type='submit'>Submit</button>
</form>
在您的 PHP 文件上:
<?php
$action = $_GET['action'];
if($action === 'form1'){
#do something
}else{
#do something
}
找到解决方法。我用 form='parent'
代替 form_2,并把 id='parent'
放在 form_1 中。缺点是现在我必须命名每个表格 id='parent'
...
没试过,我在想如果我把两个表格都用form='parent'
,然后做一个隐藏的<form id='parent>'
,我也许可以组合更多的表格。不完美...但至少可以正常工作 HTML.