开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 3615|回复: 1

ASPxTextBox单击选取范围

[复制链接]

0

精华

8

贡献

55

赞扬

帖子
43
软币
2410
在线时间
624 小时
注册时间
2013-6-10
发表于 2013-9-24 10:21:53 | 显示全部楼层 |阅读模式
有时候ASPxTextBox里面需要单击一段文字,选择该段文字相关联的上下文
1.png ,如图所示。
不过aspxtextbox并没有提供selectionStart,onclick等attribute

初始化单击事件
                    <dx:ASPxTextBox ID="tb_receivers" ClientInstanceName="tb_receivers" runat="server" Width="370px">
                        <ClientSideEvents Init="function(s,e){ s.GetMainElement().onclick = function(){ OnReceiverClick(s); }; }" />
                    </dx:ASPxTextBox>

        function OnReceiverClick(s) {
            var inputelement = s.GetInputElement();
            var inputstr = s.GetText();
            var lastpos = inputstr.indexOf(';', GetSelectionInfo(inputelement)) + 1;
            var startpos = inputstr.lastIndexOf(';', GetSelectionInfo(inputelement)) + 1;
            s.SetSelection(startpos, lastpos, true);
        }
单击字段时选择字段上下文
        function GetSelectionInfo(inputElement) {
            var start;
            if (ASPxClientUtils.ie) {
                var range = document.selection.createRange();
                var rangeCopy = range.duplicate();
                range.move('character', -inputElement.value.length);
                range.setEndPoint('EndToStart', rangeCopy);
                start = range.text.length;
            }
            else {
                start = inputElement.selectionStart;
            }
            return start;
        }

评分

参与人数 1赞扬 +1 收起 理由
快乐先锋 + 1 赞一个

查看全部评分

回复

使用道具 举报

0

精华

2

贡献

0

赞扬

帖子
28
软币
174
在线时间
11 小时
注册时间
2013-12-10
发表于 2013-12-11 00:17:23 | 显示全部楼层
好贴!这个功能实现的不错!
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-12-22 14:42

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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