找回密码
 立即注册

QQ登录

只需一步,快速开始

派大星

初级会员

37

主题

141

帖子

364

积分

初级会员

积分
364
派大星
初级会员   /  发表于:2019-8-23 15:24  /   查看:3961  /  回复:2
1金币
image.png34381407.png
想要实现如图批量插入功能,但是这个文本框却无法编辑,请问这是为什么呢,代码如下

var markWithRedBg = {
            text: "批量插入  <input type='text' onClick='asd()' style='width:20px;height:5px' value='1' />",
            name: "markWithRedBg",
            command: "markWithRedBg",
            workArea: "viewport"
        };
        spread.contextMenu.menuData.push(markWithRedBg);

function asd(){
    var e = window.event;
    e.preventDefault();//阻止事件往下进行
    e.stopPropagation();//阻止事件往下进行
    e.stopImmediatePropagation();
}




最佳答案

查看完整内容

感谢分享!300分奉上!

2 个回复

倒序浏览
最佳答案
最佳答案
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-8-23 15:24:17
来自 3#
感谢分享!300分奉上!
回复 使用道具 举报
派大星
初级会员   /  发表于:2019-8-23 15:40:20
2#
破案了
text: "批量插入  <input type='text' name='asdada' onClick='asd()' onkeydown='ddd(this)' style='width:50px;height:5px' value='1' />"

function ddd(obj){
    var x;
    if(window.event) // IE8 以及更早版本
        {
        x=event.keyCode;
        }
    else if(event.which) // IE9/Firefox/Chrome/Opera/Safari
        {
        x=event.which;
        }
    var keychar=String.fromCharCode(x);
    console.log(x);
    console.log(keychar);
    var r = /^[0-9]$/; 
    if(r.test(keychar)){
        obj.value += keychar;
    }else if(x==8 && obj.value!=''){
        obj.value = obj.value.substr(0,obj.value.length-1);
    }
}

评分

参与人数 1金币 +300 收起 理由
KevinChen + 300 很给力!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部