我在一个页面上有两种不同的表单,可以动态生成输入。一个用于文本输入,通过按下一个按钮(我称之为表单 1)另一个文本框出现。另一个添加要通知的用户。当一个按钮被按下时,一个用户被添加到列表中(我称之为表格 2)。
假设我在表单 1 上生成了 3 个文本框,如果我尝试使用表单 2 添加另一个用户,表单 1 中的所有文本框都会消失,因为没有发布表单 1 中的数据。
以下是这两种形式的调用方式
<form method="post">
<?
$friends = new common_functions();
$friends->add_friends($added_friends); //this is in common functions - also used for assistance invites
?>
<br>
</form>
<form method="post">
<br>
<?
$register = new common_functions();
$register->register_tasks($j, $reg_description, $reg_num);
?>
</form>
<?
当我更改它以使它们同时发布(而不是像当前那样单独发布)时,各个表单无法正常工作。
总而言之,有没有办法告诉表单即使没有按下提交按钮也可以发布其数据?类似 onaction(从其他形式发布数据......)
这是来自表格 2。如果我从中删除该方法,那么我将无法从列表中正确删除项目。
if(count($added_friends) > 0){
?>
<table width="200">
<col width="150">
<th>Name</th><th>Remove</th>
<?
$count = count($added_friends);
for($i=0; $i< $count; $i++){
if($added_friends[$i] == NULL){
$count = $count;
}
$friend = $added_friends[$i];
?>
<!-- allows a user to remove invited friends -->
<form method="post">
<tr><td><? echo $friend; ?></td><td><input type="submit" name="remove_friend" value="X"/>
<input type="hidden" name="remove_name" value="<? echo $friend; ?>"/>
<input type="hidden" name="added_friends" value="<? echo implode(',',$added_friends); ?>"/></td></tr> </form>
</form>
<?
}
?>
</table>
<?
}