php循环生成的表单如何获得其各项值案例
思路:输入框和按钮是用for循环生成的,不但要获取输入框里的各项值,并且要获取点击按钮的值,要知道是那个按钮被点击了,这里以生成5个为例。如图:

这是提交页面,点击的是“小米”。

这是显示结果,测试显示的值“3”表示点击了第三个按钮,接收这个值是方便对XML文件的删除和修改,这里省略XML文件操作。
前台输入文件:in.php
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<script type="text/javascript" src="mp3.js"></script>
</head>
<body>
<form name="form" action="out.php" method="post">
<input type="hidden" name="hid" id="hid" value="" /> <!--隐藏域的作用是判断哪一个按钮被点击了-->
<table border="1">
<?php
for ($i = 0; $i < 5; $i++) {
$name = "name" . $i;
$num = "num" . $i;
$hid = "hid" . $i;
$click = "click" . $i; ?>
<tr>
<td>名称: <input type="text" name="<?php echo $name; ?>" id="<?php echo $name; ?>" /></td>
<td>数量:<input name="<?php echo $num; ?>" type="text" id="<?php echo $num; ?>" size="10" /></td>
</tr>
<tr>
<td colspan="3"><input type="submit" name="button" id="button" value="提交" onclick="<?php echo $click; ?>()"/></td>
</tr>
<?php } ?>
</table>
</form>
</body>
</html>
显示结果文件:out.php
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html" />
<title>结果</title>
</head>
<body>
<table border="1" width="300px">
<tr>
<td>序号</td><td>名称</td><td>数量</td><td>测试</td></tr>
<?php
for ($i = 0; $i < 5; $i++) {
$name = "name" . $i;
$num = "num" . $i;
$hid = "hid" . $i;
?>
<tr><td>
<?php
echo $i . '</td><td>' . $_REQUEST["$name"] . '</td><td>' . $_REQUEST["$num"] .
'</td><td>' . $_REQUEST["hid"] . "</td><br>";
?>
</tr>
<?php
}
?>
</table>
<a href="in.php">重新提交</a>
</body>
</html>
JS文件(用于对隐藏域的赋值,并且把值传递到处理文件out.php里,主要用于判断是哪个按钮被点击了)MP3.js:
function click0(){
document.getElementById("hid").value=0;
}
function click1(){
document.getElementById("hid").value=1;
}
function click2(){
document.getElementById("hid").value=2;
}
function click3(){
document.getElementById("hid").value=3;
}
function click4(){
document.getElementById("hid").value=4;
}
具体的思路是:用循环生成onclick的方法名,当点击按钮“提交”时用onclick向JS提交函数方法,JS方法向隐藏域赋值,并且隐藏域把值提交到处理页面,当处理页面接收到该值后,可以定位到XML文档的节点,用于对XML文档的增删改查。
php循环生成的表单如何获得其各项值案例的更多相关文章
- django中ModelForm save方法 以及快速生成空表单或包含数据的表单 包含错误信息
django中ModelForm学习系列一~save方法 Model代码 from django.db import models # Create your models here. class P ...
- MVC动态生成的表单:表单元素比较多 你就这样写
MVC动态生成的表单:表单元素比较多 你就这样写: public ActionResult ShoudaanActionResult(FormCollection from,T_UserM user) ...
- 只有设置了 name 属性的表单元素才能在提交表单时传递它们的值
$(function () { var wait = $("<img src=\"\" alt=\"正在上传\"/>"); $( ...
- jsp-提交表单时,select的值无法传递
属性为"disabled",提交表单时,select的值无法传递,移除disabled属性,<input name="id" type="tex ...
- FXForms,自动生成iOS表单
1.简介 FXForms是一个简单的表单提交框架,他的作者是鼎鼎大名的 Nick Lockwood,你也许听说过他的其他的一些框架,比如 iCarousel. 为什么使用FxForms? 表单处理简单 ...
- JavaWeb -- Struts1 动态bean, 动态校验, 动态生成javascript 表单校验
1. 动态formbean. 表单 JSP: <%@ page language="java" import="java.util.*" pageEnco ...
- Asp 循环输出 form 表单提交的数据
亲测asp提交form表单数据,在接收页面循环输出数据 dim var for each var in request.form response.write var&"=" ...
- 使用Vue动态生成form表单
form-create 表单生成器 具有数据收集.校验和提交功能的表单生成器,支持双向数据绑定和事件扩展,组件包含有复选框.单选框.输入框.下拉选择框等表单元素以及省市区三级联动,时间选择,日期选择, ...
- vue中怎么动态生成form表单
form-create 是一个可以通过 JSON 生成具有动态渲染.数据收集.验证和提交功能的表单生成组件.支持3个UI框架,并且支持生成任何 Vue 组件.内置20种常用表单组件和自定义组件,再复杂 ...
随机推荐
- 如何做好移动安全(梆梆加固后的APK破解提取dex)
智能手机的普及将移动互联网的发展推到了一个让所有人都为之兴奋的高度,我想即使是以商业眼光见长的“苹果教父”乔布斯也不会料想到短短几年时间,智能手 机就已经成为了所有人离不开的商业产品,各种商业应用层出 ...
- map map
下面的无法运行. @Override protected void map(LongWritable key, Text value, Mapper<LongWritable, Text, Te ...
- PAT (Advanced Level) 1049. Counting Ones (30)
数位DP.dp[i][j]表示i位,最高位为j的情况下总共有多少1. #include<iostream> #include<cstring> #include<cmat ...
- Android Studio实现Service AIDL
Android Studio实现Service AIDL [日期:2015-01-02] 来源:Linux社区 作者:teenyboy [字体:大 中 小] 今天要开发过程中要用到AID ...
- thinkphp5.0 架构
1.0 MVC的意义:MVC是一个设计模式,它强制性的使应用程序的输入.处理和输出分开.使用MVC应用程序被分成三个核心部件:模型(M).视图(V).控制器(C),它们各自处理自己的任务. 2.0入口 ...
- Ubuntu安装pycharm
在安装pycharm之前,想看一下需要安装那些软件. 在安装前先下载软件 JDK http://www.oracle.com/technetwork/java/javase/downloads/jdk ...
- ural1521 War Games 2
War Games 2 Time limit: 1.0 secondMemory limit: 64 MB Background During the latest war games (this s ...
- php登录
if ($name && $passowrd){ $sql = "SELECT * FROM liuyanban WHERE name = '$name' and passw ...
- DOM对象和JQuery对象进行转换
var btn=document.getElementById("btn"); $(btn).click(function(){}); DOM对象转换为JQuery对象: 用$符号 ...
- openstack controller ha测试环境搭建记录(八)——配置nova(控制节点)
在任一节点创建nova用户:mysql -u root -p CREATE DATABASE nova;GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localh ...