找回密码
 立即注册

QQ登录

只需一步,快速开始

MatrixTian 讲师达人认证 悬赏达人认证

高级会员

141

主题

211

帖子

1378

积分

高级会员

积分
1378

微信认证勋章讲师达人元老葡萄悬赏达人

本帖最后由 Tracy.Liu 于 2019-9-5 14:46 编辑

活字格有一个功能我相信很多人都没有使用过,我们先来看看是什么?
image.png670684814.png

就是它 --“保留URL的查询参数”。这项默认是不勾选的,为了搞清楚介个是做什么用的,我们将它勾选起来,然后建一个表,快速生成个列表页面和详情页面,添加几条数据后,运行~
然后我们就会惊奇地发现,咦~跳转到详情页时,url后面多出来了好长好长一串参数:
保留url查询参数.gif

大家看到这里可能是懵的,心说“我是谁?我在哪?我要这一串乱七八糟的参数做甚?”

其实用处还是蛮大滴,我们来说一个用户的实际案例就清楚啦。用户寄几有一个系统,系统中有一个类似于活字格中列表页面的页面,然后每一行有一个按钮类似于更改/查看按钮,点击后跳转到活字格的详情页面,显示出对应那一行数据的详情。
如果列表页面也是活字格的,那么就好办了~直接勾选“加载记录绑定”就OK啦,活字格直接帮您搞定~可是案例中列表页面是第三方的系统,这个跳转如何显示出对应行的详情嘞?
答案就是“保留URL的查询参数”!

要做这个功能,我们先要了解这个参数中哪里标记着当前行的id?我贴上来一段带参数的url:
  1. http://localhost:42959/%E8%A1%A81_%E8%AF%A6%E6%83%85%E9%A1%B5%E9%9D%A2?pageContext=ABload%22inding%7
  2. DataOptionBF1GBpassValuesBFCAB
  3. SourceBFB%E6%9B%B4%E6%94%B9BGBTarget%5BellBFAB
  4. RowBF11GB%5BolumnBF10DDEGBcurrentRowInfoListBFCAB
  5. currentTableBFB%E8%A1%A81BGBviewnameBFB%E8%A1%A81_%E5%88%97%E8%A1%A8%E9%A1%B5%E9%9D%A2%E8%A1%A8%E6%A0%BC1BGB
  6. listviewLocationBFB%E8%A1%A81_%E5%88%97%E8%A1%A8%E9%A1%B5%E9%9D%A2%E8%A1%A8%E6%A0%BC1BGB
  7. selectedRowIndexBF0GBrecordI%7DBF0GB
  8. queryBFABI%7DBF1DDEGB
  9. sortInfo%5BacheBFAB%E8%A1%A81_%E5%88%97%E8%A1%A8%E9%A1%B5%E9%9D%A2%E8%A1%A8%E6%A0%BC1BFAB
  10. sortInfoBFnullDDD
复制代码
在URL中查找关键字:query,获取到queryBFABI%7DBF1DDEGB其中DBF后的红色1即为当前记录的ID。
知道这个ID的位置,那就好办了~

整个过程我们可以这样来处理:
1.先获取到详情页面的含参完整URL
  1)打开工程文件,在文件--设置--应用程序设置中,勾选保留URL的查询参数;
  2)通过活字格列表页面跳转到详情页面,在URL地址栏中获取详情页面完整URL。

2.在第三方列表页面中获取当前行id,然后通过js拼接这个id值到上面获取到的URL中,生成动态URL,作为动态URL就可以返回相应记录的详情页面。比如:
  1. var str=document.getElementById("id");    //在第三方中获取到id

  2. //在url中记录id的位置,拼接获取的id的值
  3. var urlStr="http://localhost:42959/%E8%A1%A81_%E8%AF%A6%E6%83%85%E9%A1%B5%E9%9D%A2?pageContext=ABload%22inding%7
  4. DataOptionBF1GBpassValuesBFCAB
  5. SourceBFB%E6%9B%B4%E6%94%B9BGBTarget%5BellBFAB
  6. RowBF11GB%5BolumnBF10DDEGBcurrentRowInfoListBFCAB
  7. currentTableBFB%E8%A1%A81BGBviewnameBFB%E8%A1%A81_%E5%88%97%E8%A1%A8%E9%A1%B5%E9%9D%A2%E8%A1%A8%E6%A0%BC1BGB
  8. listviewLocationBFB%E8%A1%A81_%E5%88%97%E8%A1%A8%E9%A1%B5%E9%9D%A2%E8%A1%A8%E6%A0%BC1BGB
  9. selectedRowIndexBF0GBrecordI%7DBF0GB
  10. queryBFABI%7DBF" + str + "DDEGB
  11. sortInfo%5BacheBFAB%E8%A1%A81_%E5%88%97%E8%A1%A8%E9%A1%B5%E9%9D%A2%E8%A1%A8%E6%A0%BC1BFAB
  12. sortInfoBFnullDDD";
复制代码

如上操作以后,我们想要的功能效果就实现啦~~

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部