BSP和JSP里的UI元素ID生成逻辑
CRM WebClient UI
WebClient UI渲染出来的DOM元素的这些C#_W#格式的id是在哪行ABAP代码被生成出来的?
参考我的博客WebClient UI element ID generation logic
Hybris
既然是JSP,和同样基于服务器端渲染的BSP的套路一样。Hybris的应用开发人员不用重复造轮子,直接在JSP页面里使用ycommerce标签:
ycommerce标签实现如下。从注释里也能清楚看出这个JSP标签的实现,为了确保id唯一,采用的是和CRM WebClient UI一样的方式:内部维护一个计数器,每次生成元素后加1.
计数器加一的代码:
等价于WebClient UI第16行代码:
JSP没办法直接被浏览器执行,而是编译成.class,最后浏览器输出的原生HTML代码生成于这些.class:
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
BSP和JSP里的UI元素ID生成逻辑的更多相关文章
- appium— Android定位webView里面的UI元素
Android SDK中的UIAutomator中本身是不支持网页中的UI元素定位,下面介绍几种常用的定位app内部的网页的UI元素的方法. 一.使用chrome浏览器调试移动端网页 这是使用最多的一 ...
- CSharpGL(6)在OpenGL中绘制UI元素
CSharpGL(6)在OpenGL中绘制UI元素 2016-08-13 由于CSharpGL一直在更新,现在这个教程已经不适用最新的代码了.CSharpGL源码中包含10多个独立的Demo,更适合入 ...
- 在WPF中减少逻辑与UI元素的耦合
原文:在WPF中减少逻辑与UI元素的耦合 在WPF中减少逻辑与UI元素的耦合 周银辉 1, 避免在逻辑中引用界面元素,别把后台数据强加给UI 一个糟糕的案例 比如说主界 ...
- 图解Janusgraph系列-分布式id生成策略分析
JanusGraph - 分布式id的生成策略 大家好,我是洋仔,JanusGraph图解系列文章,实时更新~ 本次更新时间:2020-9-1 文章为作者跟踪源码和查看官方文档整理,如有任何问题,请联 ...
- 在JSP里使用CKEditor和CKFinder
在JSP里使用CKEditor和CKFinder 最 近在做一个新闻发布平台,放弃了很早的FCKEditor,使用CKEditor和CKFinder,尽管免费的CKFinder是Demo版本,但是功 ...
- [转]结合HierarchyViewer和APK文件反编译获得APP元素id值
背景: 最近在使用Robotium进行Android自动化测试.遇到了一个问题:我需要获得一个View的id(int型数值).此前我在http://maider.blog.sohu.com/25544 ...
- go语言使用go-sciter创建桌面应用(二) ui元素查找,增加,删除,修改
我们可以通过go-sciter给我们提供的方法,方便的对html,css编写的UI界面进行增删改查. demo3.go代码如下: package main; import ( "github ...
- 巧用Drawable 实现Android UI 元素间距效果
源文地址: 巧用Drawable 实现Android UI 元素间距效果 在大部分的移动UI或者Web UI都是基于网格概念而设计的.这种网格一般都是有一些对其的方块组成,然后它们组合成为一个块.使用 ...
- JavaScript通过元素id和name直接获取元素的方法
概览: 偶然的机会,我在JavaScript中直接用HTML元素的id属性来获取该元素,并设置该元素的其他属性值,竟然能够正确解析不报错!于是我去查阅相关资料,也有其他同行这么用. 虽然说这种用法不是 ...
随机推荐
- restframework CBV试图的4种方式
day100 上节回顾 1 APIView流程 2 序列化组件(restframework) 1 # 自定义序列化组件 class BookSerializers(serializers.Serial ...
- sysbench 安装、使用和测试
摘要: sysbench是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据库的性能测试.目前支持的数据库有MySQL.Oracle和Post ...
- Day03 知识点
一.单行注释与多行注释 # 用来标记不运行的程序 pycharm 快捷键 ctrl+/ 可以在程序上方 也可以在程序后面 (PEP8) 多行注释 用三引号,一般推荐三双引号来做注释. 二.数据类型 ( ...
- web三大组件
1.Servlet Servlet是用来处理客户端请求的动态资源,也就是当我们在浏览器中键入一个地址回车跳转后,请求就会被发送到对应的Servlet上进行处理. Servlet的任务有: 接收请求数据 ...
- Nuxt 2.3.X 配置babel
1. 在package.json中修改运行脚本 添加--exec babel-node 添加之后的效果为:(修改了8/10行) { "name": "nuxt-learn ...
- Python + Selenium 基础篇 - 打开和关闭浏览器
1.首先要下载浏览器对应的driver,并放到你的python安装目录 Chrome浏览器(chromedriver): http://npm.taobao.org/mirrors/chromedri ...
- RTT之内核服务函数
一 延时函数: rt_thread_delay(t) //调用时进入系统调度. rt_kprintf()函数在kservice.c中实现,如果不使用设备驱动,则由自定义函数void rt_hw_con ...
- BuildAssetBundles文件打包
BuildAssetBundles文件打包: public class BuildAssetBundlesTest : Editor { //定义打包文件路径 public static string ...
- contextMenu的使用
contextMenu继承自menu,于是具有menu的一些属性,比如它的add方法,add方法其中的几个参数要注意一些是什么意思:如下图: 第一个groupid顾名思义,组id,如果要把这些item ...
- (转)企业级NFS网络文件共享服务
企业级NFS网络文件共享服务 原文:http://www.cnblogs.com/chensiqiqi/archive/2017/03/10/6530859.html --本教学笔记是本人学习和工作生 ...