领导要求复杂的文本框

ssh78 2009-06-02 04:56:55
一个文本框,实现输入mac地址,复杂的是要求页面载入的时候,文本框里已经有“ - - - - - ”这样的格式了,用户只需要输入数字和英文字母,输入的内容自己在文本框里输入到相应位置了。就和咱们机器TCP/IP设置里,填写ip地址差不多,但是要求用一个文本框实现。不知道各位,这样的功能能实现不?如果不能,那怎样才能实现mac地址的智能输入?
我的想法是用5个文本框来实现。
...全文
76 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
xgnewlife 2009-06-02
  • 打赏
  • 举报
回复
有挑战,LZ做好了 记得 分享啊
关注。。
ssh78 2009-06-02
  • 打赏
  • 举报
回复
谢谢大家,人人有分,结贴去
浪尖赏花 2009-06-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ssh78 的回复:]
引用 3 楼 lihui_shine 的回复:
通过css样式控制,可以达到那个效果,给人感觉上就一个text框,实际上还是用5个框来处理

不知道老兄在哪里看到的,可以发个链接么?
[/Quote]
我没有在哪里看到,只是说个思路^_^
monexus 2009-06-02
  • 打赏
  • 举报
回复
一下是但文本框的

<input type="text" id="mac" value=" - - - - - " maxlength="17">
<script type="text/javascript">
function addEvent(elem, type, hdl){
if (elem.addEventListener) {
elem.addEventListener(type, hdl, false);
} else if (elem.attachEvent) {
elem.attachEvent("on" + type, hdl);
} else {
elem["on" + type] = hdl;
}
}

addEvent(document.getElementById('mac'), 'keydown', function(e){
e = e || window.event;
var target = e.srcElement || e.target, key = e.keyCode, ch = String.fromCharCode(key);
if ((key > 47 && key < 58) || (key > 64 && key < 71)) {
var mac = target.value.split(/\s*-\s*/);
for (var i = 0; i < mac.length; i++) {
mac[i] = mac[i].replace(/\s+/, '');
if (mac[i].length == 0) mac[i] += ch, ch = ' ';
if (mac[i].length == 1) mac[i] += ch, ch = ' ';
}
target.value = mac.join('-');
}
if (e.preventDefault) e.preventDefault();
else e.returnValue = false;
});
</script>
holyzr 2009-06-02
  • 打赏
  • 举报
回复
css样式控制
ssh78 2009-06-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lihui_shine 的回复:]
通过css样式控制,可以达到那个效果,给人感觉上就一个text框,实际上还是用5个框来处理
[/Quote]
不知道老兄在哪里看到的,可以发个链接么?
monexus 2009-06-02
  • 打赏
  • 举报
回复
5个框来处理最方便了
一个框的处理起来太麻烦了
saisky 2009-06-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lihui_shine 的回复:]
通过css样式控制,可以达到那个效果,给人感觉上就一个text框,实际上还是用5个框来处理
[/Quote]

这是最有效的方法了 控制起来也方便一些
cb1156 2009-06-02
  • 打赏
  • 举报
回复
用一个的话.要控制光标. 要控制 onkeydown 要处理鼠标的剪切粘贴什么的.
效果和严谨都不如用5个..
浪尖赏花 2009-06-02
  • 打赏
  • 举报
回复
通过css样式控制,可以达到那个效果,给人感觉上就一个text框,实际上还是用5个框来处理
lihan6415151528 2009-06-02
  • 打赏
  • 举报
回复
以前在java大阪貌似也讨论过这个,但是最后未果。关注了
lihan6415151528 2009-06-02
  • 打赏
  • 举报
回复
要是我做的话也得5个来实现

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧