起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12985|回复: 16

[处理中6] 动态创建的html添加onclick传参数

[复制链接]

18

主题

59

帖子

380

积分

中级会员

Rank: 3Rank: 3

积分
380
QQ
发表于 2016-7-11 14:10:57 | 显示全部楼层 |阅读模式
版本: BeX5V3.1 小版本号: 3.4
数据库: Oracle 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 8 浏览器: Chrome
Model.prototype.load = function(para) {
   //js动态创建的html  
   // img添加onclick,递归调用Model.prototype.load(para)
}
一打开页面Model.prototype.load就被执行,死循环了,请问怎么调用有参数的;
看了很多帖子都是回复  “动态创建组件请参考:http://doc.wex5.com/comp-base/#2.2”,用这个例子添加参数也是一样的呀

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36187
发表于 2016-7-11 14:48:26 | 显示全部楼层
你不能在load中再去调用load啊,这样肯定死循环了

具体需求要做什么?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

18

主题

59

帖子

380

积分

中级会员

Rank: 3Rank: 3

积分
380
QQ
 楼主| 发表于 2016-7-11 14:55:26 | 显示全部楼层
递归调用Model.prototype.load,不带参数,打开页面Model.prototype.load不会被执行,只有img点击的时候才会执行load,所以不会死循环,但是我需要加入参数,也就是递归调用Model.prototype.load(), 一打开页面Model.prototype.load就被执行 ,所以才会死循环
回复 支持 反对

使用道具 举报

18

主题

59

帖子

380

积分

中级会员

Rank: 3Rank: 3

积分
380
QQ
 楼主| 发表于 2016-7-11 15:04:30 | 显示全部楼层
有一个tree,打开windowsdialog的时候,显示第一层的tree,有一个字段存储的图片,js动态组织html,<ul><li><img/></li></ul>,点击图片显示该图片下面的子,现在用递归已经实现了上面的描述,但是点击图片的时候需要把点击图片这条数据的id作为父节点传进去,也就是递归调用Model.prototype.load(父节点)造成了上面描述的情况
回复 支持 反对

使用道具 举报

18

主题

59

帖子

380

积分

中级会员

Rank: 3Rank: 3

积分
380
QQ
 楼主| 发表于 2016-7-11 15:29:04 | 显示全部楼层

<div class="" id="EquipmentLi">
   
</div>  


var filter="ParentCode  is null";
Model.prototype.load = function(filter) {
                $("#EquipmentLi").html("");
                var array_imgid = new Array();
                var html;
               
                html = '<ul class="">';
                var data =  this.comp("bizData");
                data.setFilter("filter", filter);
                data.refreshData();
                data.each(function(param) {
                        var url = require.toUrl("../public/img/pictogram.png");
                        html += '<li class="">';
                        if (param.row.val('fPicture') != null && param.row.val('fPicture') != "" && param.row.val('fPicture') != "[]") {
                                var imageJson = eval("(" + param.row.val('fPicture') + ")");
                                var fileID = imageJson[0]["fileID"];
                                var docPath = imageJson[0]["docPath"];

                                url = DocUtils.InnerUtils.getdocServerAction({
                                        "docPath" : docPath,
                                        urlPattern : "/repository/file/view/" + fileID + "/last/content",
                                        isFormAction : false,
                                        context : context
                                });

                        }
                        array_imgid.push("img_" + param.row.val('fCode'));
                        html += '<img class="aui-img-object" id="img_' + param.row.val('fCode') + '" style="width:128px;height:128px" src="' + url + '"/>';
                        html += '<div class="aui-img-body">' + param.row.val('fName') + '</div>';
                        html += '</li>';
                });
                html += '</ul>';
               
                $("#EquipmentLi").html(html);
                debugger;
                for (var i = 0; i < array_imgid.length; i++) {
                        $("#" + array_imgid[i]).on("click", arguments.callee("ParentCode = 'xxxx'"));
                }

        };
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36187
发表于 2016-7-11 16:43:26 | 显示全部楼层
看var data =  this.comp("bizData");
                data.setFilter("filter", filter);
                data.refreshData();查出来的数据是否正确
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

18

主题

59

帖子

380

积分

中级会员

Rank: 3Rank: 3

积分
380
QQ
 楼主| 发表于 2016-7-11 16:47:21 | 显示全部楼层
本帖最后由 dlgxwx 于 2016-7-11 16:49 编辑

页面加载的时候load第一次执行,data.refreshData();查出来的数据没有问题,tree的第一层的图片加载正确,然后图标的click没办法传id进去了,因为递归调用的时候不能写参数
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36187
发表于 2016-7-11 17:27:50 | 显示全部楼层
在自己的html中调用model的函数应该参考http://doc.wex5.com/comps-datatables-grid/#5.3

写参数死循环的应该是看看具体执行到什么地方会死循环
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

18

主题

59

帖子

380

积分

中级会员

Rank: 3Rank: 3

积分
380
QQ
 楼主| 发表于 2016-7-12 11:24:25 | 显示全部楼层
递归函数本身没问题,问题是加了参数是页面加载就执行,不是点击图片执行
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36187
发表于 2016-7-12 11:58:41 | 显示全部楼层
把.w和js发一下看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-19 06:55 , Processed in 0.138708 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表