html按钮跳转_web实现一个按钮从前端到后端的简单流程

简单来说流程就是

首先设计好html呈现给客户,上面有很多按钮对应不同的功能,首先我们为按钮写一个js方法用来封装数据或者改变呈现等等,这里跳转方式一般可采用在html里加入οnclick=“XXX()”,使点击按钮后跳到对应的js方法xxx()里封装或操作数据或者做些其他的,

然后在js方法里可以使用锚(#)等功能跳转到其他的html或者通过$.ajax里的url传到对应的后端java方法里,

然后java方法里就可以对这些数据进行一些操作,并且可以和数据库交互.(这里数据库交互简单一点的可以用EntityManage类来管理,交互方式很多).

在方法里与数据库交互,并返回结果。

js又对返回的结果进行操作判断然后跟新页面等。

下面具体举个例子说明:

第一步:在数据库中建表,自动扫进去新增菜单

eb41a5b7d3b603c27d7edcfc2c0655d6.png

然后可以在页面左边看到新增的菜单

9ac80b4f06a7849b08d402e4656765b6.png

第二步 创建这个页面的html (忽略)

第三步 以“修改”按钮为例:

首先在$(document).ready(function()中添加加载项dataTable = $('#authDeviceList').DataTable({......}),

document会先于页面之前加载,具体解释请参考DOM文档文本对象。

571ccf6e0889446969118f89cd6763b6.png

这里因为需要在返回的数据后面添加一个修改键按钮,所以这里用id占了一列html页面显示的column,如图:

3527edacb2b6bf0a03eb0500de365a5f.png

从query方法返回数据后在columnDefs里面对每个需要特殊处理的columns列做处理,这里对第5列做处理,

(判断用户权限后)将“修改”按钮返回:

b2761ddd575471e1eae74dd1aab7abcc.png

这样在页面上每一条数据后面都会有一个修改按钮。

fc6b93e4c8d75a52f6a033c962170afe.png

第4步:完成修改按钮功能

点击”修改”按钮则会弹出对应修改html,按钮如下(上图没截完):

fec471c93f61f9e255e2124c4cda4beb.png

可以看到点击这个按钮后会跳到对应的js函数里,并带有参数值(这个对象的所有值,这个对象是一个entity,在EntityManage管理下与数据库交互)

点击后跳到对应的js方法处:

e7f90ab446183f82be7e865d26529220.png

于是根据这个锚跳到对应的html中并填充值显示;

8f155b2b9c544f1fc6a15d2b2d70b4e8.png

(关于锚简单说一下:

比如<li><ahref="#importDevice" data-toggle="tab" th:each="res : ${resList}"th:if="${res.funUrl} == '/portal/device/device/addDevice'"οnclick="showAddPage()">添加设备</a></li>

<a>标签指向了一个超链接,当点击添加设备时会跳转到这个超链接,这里#importDevice是个提前设好的锚用来快速定位,像这种有onclick的,当点击了”添加设备”后会不仅会跳转到超链接还会执行js方法:showAddPage().

一个锚对应一个id,然后填充要显示的值,比如:

4931a3185ba343a29a961fac17c78a0f.png

这里对应id和ip,id用hidden来修饰作为隐藏值,不由用户修改用户也看不到,设置后直接隐藏。就会弹出如图:

306f0c62fc49ba250b1a0a972c49f75f.png

这里用disabled属性限制了ip、mac、名称都不可以被修改;

接下来就是用户来修改,这里只允许修改备注

修改完后点击”确定”,首先我们需要使点击确定后跳到js方法里封装数据,然后传到对应的后端java方法里,

在方法里与数据库交互,并返回结果。

c82ed194c082ec408c0f737dfd3b4d4c.png

跳到js方法

7c7b98f55b4ea146ca28754506c7cf5a.png

然后在这个函数里会用url指向一个方法,并把值封进obj里面一起给方法:

567c0c3cb2fcfc4eaa3dd530584b9dc6.png

于是这样就把前端的数据封装后传给后端的java方法里了。

0d4966f19ce6a2d996ec29a0fc346054.png

这个AuthDevice是根据自己的数据库而设计的对应的类,是一个entity bean,可以被entity管理与数据库交互。(交互方式请参考EntityManage介绍)

Ps: 这里数据库里的项用Entity Bean实例一一对应,操作实例相当于操作数据库。用@Table(name=”xxx”)来映射类和数据库; 用@Column(name=”xxx”)来关联成员属性和html中的columns

ae7e300cfa704ab713891eafc905254d.png

最后java方法返回个前端结果,然后更新页面等等。

这只是最简单的流程,梳理好流程框架后再慢慢填充细节吧~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值