网站制作

本类阅读TOP10

·IIS 安装配置全攻略
·html基础学习笔记(2)
·html基础学习笔记(1)
·用VS.NET打开网上下载的.NET web项目出错的解决办法
·如何在网页上实现进度条
·限制TextArea区的文字输入数量
·HTML 4.0 语言快速参考
·在weblogic上配置SSL
·页面垂直居中的两种方法
·Zope/Plone内容管理系统的探讨与应用-内容管理系统(CMS)的概述

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
约束输入框前几位不可变

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

        在我们开发系统中,曾有过这种需求,就是使文本框中前几位的内容不可变,这里对这个功能进行封装,只需要在输入框中引入css样式即可.

        希望对大家有所帮助.

<!-- 欢迎转载,请保留作者和出处,谢谢 -->
<HTML>
<STYLE>
.notChangePartValue
{
    input:expression(regInput(this));
}
</STYLE>
<SCRIPT language="javascript">
function regInput(obj)
{
    obj.ondrop = function(){return false;}
    obj.oncontextmenu = function(){return false;}
    obj.onkeydown = function()
    {
        restrictInputValue(obj)
    }
}
/**
 * added by LxcJie 2004.7.3
 * 限制文本框的前几位不可以改变
 * 在文本框的onKeyDown事件中调用restrictInputValue(this)
 * 即使最初指定的value值不再允许改变
 */
function restrictInputValue(obj)
{
    var range = obj.createTextRange();
    //给相应的文本框设置一个自定义属性initWidth,用来保存起始value的宽度
    if(typeof(obj.initWidth) == "undefined")
    {
        obj.initWidth = range.boundingWidth;
    }
    var selRange = document.selection.createRange();
    //如果页面没有选中任何文字
    if(selRange.text.length == 0)
    {
        selRange.setEndPoint("StartToStart",range);
        var currentWidth = selRange.boundingWidth;
        if(currentWidth < obj.initWidth)
        {
            if(event.keyCode < 33 || event.keyCode > 40
                || event.keyCode == 46 || event.keyCode == 8)
                event.returnValue = false;
        }
        if(currentWidth == obj.initWidth)
        {
            if(event.keyCode == 8)
                event.returnValue = false;
        }
    }
    //页面选中文字
    else
    {
        selRange.moveEnd("character",-selRange.text.length);
        selRange.setEndPoint("StartToStart",range);
        var currentWidth = selRange.boundingWidth;
        if(currentWidth <= obj.initWidth-1)
        {
            //对于方向键和home,end,pageup,pagedown不限制
            if(event.keyCode < 33 || event.keyCode > 40)
                event.returnValue = false;
        }
    }
}
</SCRIPT>
<BODY>
<INPUT type="text" value="Soft" class="notChangePartValue">
</BODY>
</HTML>



相关文章

相关软件




月光软件程序下载编程文档电脑教程网站设计网址导航网络文学游戏天地幽默笑话生活休闲写作范文安妮宝贝
电脑技术编程开发网络专区谈天说地情感世界游戏元素分类游戏热门游戏体育运动手机专区业余爱好影视沙龙
音乐天地数码广场教育园地科学大观古今纵横谈股论金人文艺术医学保健动漫图酷二手专区地方风情各行各业

月光软件站·版权所有