如何生成任意表格php,表格自动生成器——2018年4月19日

实例

html>

表格自动生成器

h3 {

color: green;

margin-left:40px;

}

button {

width: 80px;

height: 30px;

border: none;

background-color: green;

color:white;

margin-right: 30px;

}

表格生成器

输入行:

输入列:

输入表格标题:

生成表格重置行列

//创建请求标志,防止重复请求

var flag = true

$('button:first').on('click',function(){

var is_true = false

//第一步:遍历并验证用户的输入信息

//$(选择器).each(对象索引,当前对象):用来循环遍历获取到所有jquery对象

$(':input').not('button').each(function(index,obj){

//非空判断

if ($(obj).val().length == 0) {

//在当前元素后添加提示信息

$(obj).after('不能为空')

//用定时器使提示信息2秒后消失

setTimeout(function(){

//2秒后,将提示信息删除

$(obj).next().remove()

},2000)

//返回让用户重新操作

return is_true = false

//非数字判断

} else if (isNaN($(obj).val())) {

$(obj).after('必须是数字')

setTimeout(function(){

$(obj).next().remove()

},2000)

return is_true = false

//零值判断

} else if ($(obj).val() <= 0) {

$(obj).after('必须大于0')

setTimeout(function(){

$(obj).next().remove()

},2000)

return is_true = false

}else{

return is_true = true

}

})

//第二点:处理用户的请求(Ajax实现)

if (flag == true && is_true == true) {

$.get(

//1.请求处理的脚本

'demo2.php',

//2.发送的请求参数

{

rows: $('input[name="rows"]').val(),

cols: $('input[name="cols"]').val(),

title: $('input[name="title"]').val()

},

//3.请求成功的回调函数

function(data){

//先将上一次生成的表格删除

$('p:last').next().remove()

//生成新的表格

$('p:last').after(data)

//将请求标志设置为false,禁止重复请求

flag = false

})

}

})

//重置按钮

$('button').eq(1).click(function(){

//将行与列数据全部清空

$(':input').not('button').val('')

//将输入焦点重置到行文本框上

$(':input:first').focus()

//将上一次请求生成的表格删除

$('p:last').next().remove()

//重置请求状态为true:允许用户请求

flag = true

})

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

//判断用户的请求类型是否合法,必须是GET请求

if ($_SERVER['REQUEST_METHOD'] == 'GET') {

//如果用户发送的数据全部存在且不为空

if (!empty($_GET['rows']) and !empty($_GET['cols']) and !empty($_GET['title'])) {

//用较短的变量名称进行转存

$rows = $_GET['rows'];

$cols = $_GET['cols'];

$title = $_GET['title'];

//创建表格的基本架构,采用字符串拼接方式,最后统一生成,提高效率

$table = '

//下面用双重循环来生成这个表格

//1生成表头

$table .= '

';

$table .= "

{$title}";

$table .= '

';

//2.生成表格内容区

for ($r=0; $r

$table .= '

';

for($c=0; $c

//设置单元格的数据,数据与单元格数量对应

$data = $r*$cols+$c;

// ++$data: 可以确保从1开始计数,以确保符合人类正常思维

$table .= '

'.++$data.'';

}

$table .= '

';

}

$table .= '

';

//将生成的表格返回到客户端

echo $table;

//结束当前脚本,可以省略,但写上该语句是一个很好的编程习惯

exit();

}

} else {

exit('请求类型错误');

}

运行实例 »

点击 "运行实例" 按钮查看在线实例

总结:  1、输入标题也会进行过滤,我还在努力解决这个问题

2、标题不能居中,今明两天继续改!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值