我对包含foreach的表单有一些问题,我在表单之外输入提交按钮(在foreach之外)但是当我选择复选框时,它只获得第一个复选框!怎么做?感谢
Remarque:我无法将表格放在foreach附近。
{foreach from=$aWSForServer2 key=ws item=webservice}
<form action="index.php" method="post" onSubmit="return confirm('{$i18n.confirm_suppress}')" id="FormDelSelWS" >
<input type="hidden" name="view_mode" value="{$view_mode}" />
<input type="hidden" name="action" value="del_sel_ws" />
<input type="hidden" name="idServer" value="{$server_id}" />
<input type="checkbox" name="WSSelcet[]" value="{$webservice.Webservice__}" />
</form>
{/foreach}
<table style="width:620px;margin:5px;">
<tr>
<td style="width:300px"></td>
<td style="width:140px"></td>
<td style="width:160px"></td>
<td>
<button type="submit" value="{$i18n.suppress}" form="FormDelSelWS">
supprimer</button>
</td>
</tr>
</table>
答案 0 :(得分:0)
您需要重新考虑您的逻辑,可能包含一个表单。
目前尚不清楚循环中哪些值发生了变化,但看起来只有复选框才有效。如果是这样,你只需要在表单中移动你的循环。
<form action="index.php" method="post" onSubmit="return confirm('{$i18n.confirm_suppress}')">
<input type="hidden" name="view_mode" value="{$view_mode}" />
<input type="hidden" name="action" value="del_sel_ws" />
<input type="hidden" name="idServer" value="{$server_id}" />
{foreach from=$aWSForServer2 key=ws item=webservice}
<input type="checkbox" name="WSSelcet[]" value="{$webservice.Webservice__}" />
{/foreach}
<button type="submit" value="{$i18n.suppress}">
supprimer
</button>
如果循环中的任何其他值发生变化,并且需要与特定的提交按钮相关联,那么您可以:
$_POST
。这样:
<input type="hidden" name="idServer[{$webservice.Webservice__}]" value="{$server_id}" />