阅读:3041 回复:3
zjlrzl
12

帖子

58

跟帖

1836

积分

黄金榴莲
黄金榴莲

改变子表超链接列的控件值

楼主#
更多 发布于:2017-11-15 12:52

请看下这段代码需要放到哪个方法里才能在页面加载 时成功更改子表某列控件(SheetHyperLink)的值




$("table[data-datafield='子表']").find("tr.rows").each(function () {
            //注:一个子表就是一个table,table下面的每个tr、td都有一个属性“data-row”,它是记录当前这个tr、td所在行的行号(就是每行前面的序号)
            var row = $(this).attr("data-row");
            //$.MvcSheetUI.GetControlValue("子表.SheetHyperLink", row)

            var SheetHyperLink控件ID= "#子表ID" + row;
            debugger;
            var OpenCraft = $(OpenCraftID).SheetUIManager();
            OpenCraft.NavigateUrl = "baidu.com";
            OpenCraft.Text = "编写";

        })
zjlrzl
12

帖子

58

跟帖

1836

积分

黄金榴莲
黄金榴莲
1楼#
发布于:2017-11-15 12:56
现在是不起作用,调试看可以改变对象值,但是表单上还是没有变
TAn
TAn
46

帖子

688

跟帖

4536

积分

H3 BPM互助团队
H3 BPM互助团队
  • 社区居民
2楼#
发布于:2017-11-15 13:20
链接已经根据NavigateUrl 生成了,你再改就没有作用。
如下三种方式你参考一下
1 在控件初始化的时候改
// 控件初始化事件
        $.MvcSheet.ControlInit = function () {
            if (this.Type == "SheetHyperLink" && this.DataField == "idxxx"){
      this.NavigateUrl = "baidu.com"; 
}
}


2 直接修改href
$.MvcSheetUI.GetElement("idxxx").href = "baidu.com";



3 改后重新加载一下,按你那个方式,后面加一句
OpenCraft.Render();
zjlrzl
12

帖子

58

跟帖

1836

积分

黄金榴莲
黄金榴莲
3楼#
发布于:2017-11-15 13:27
TAn:链接已经根据NavigateUrl 生成了,你再改就没有作用。
如下三种方式你参考一下
1 在控件初始化的时候改
// 控件初始化事件
        $.MvcSheet.ControlInit = function () {
     ...
回到原帖
非常感谢!!!
游客

返回顶部