readonly/disable input 问题
Perhapes for surity, in chrome and IE10, readonly/disabled input will be reset when the form submit.
for example,in the function "SelectProjectFeeType",nowFeeTypeName.value=returnValue[1]; is not work, because, when form submit, fee type name will be cleared.
function SelectProjectFeeType(nowFeeTypeName,nowFeeTypeID,nowFeeRule)
{
var ProjectID=document.Form1.txtProjectID.value;
var returnValue=showModalDialog( "../ToolManagement/ProjectFeeTypeSelectorFrame.aspx?ProjectID="+ProjectID+"&FeeSortType=4",window, "scroll:yes ;font-family:Verdana; font-size:12; dialogWidth:750px; dialogHeight:600px;status:no;help:no");
if(returnValue!=null)
{
nowFeeTypeID.value=returnValue[];
if(CheckIsRepeat('txtFeeTypeID'))
{
nowFeeTypeName.value=returnValue[1];
nowFeeRule.value=returnValue[];
document.Form1.txtFeeSortStatus.value=nowFeeTypeID.id;
document.Form1.txtOperatorStatus.value="GetFeeSortTotal";
document.Form1.submit();
}
}
}
解决方法:
去掉readonly = "true"; 将input的class设置为"readonly", 如下图所示:
<input type="text" class="readonly" value="readonly text"/>
在javascript中加上处理,让class为readonly的input无法输入或粘贴
function getElementByClass(matchClass, tagName) {
var result = [];
var tagName = tagName || "*";
var elems = document.getElementsByTagName(tagName), i;
for (i in elems) {
) {
result.push(elems[i]);
}
}
return result;
}
function makeInputReadonly() {
var elems = getElementByClass("readonly", "input");
; i < elems.length; i++) {
var elem = elems[i];
if (elem.attachEvent) {
elem.attachEvent("onpaste", function (e) { e.preventDefault(); });
elem.attachEvent("onkeydown", function (e) { return false; });
} else {
elem.addEventListener("paste", function (e) { e.preventDefault(); });
elem.addEventListener("keydown", function (e) { e.preventDefault(); return false; });
}
elem.setAttribute("autocomplete", "false");
}
}
if (window.attachEvent) {
window.attachEvent("onload", function () {
makeInputReadonly();
});
} else {
window.addEventListener("load", function () {
makeInputReadonly();
});
}
兼容IE10:
IE10中,input会自带一个清除的按钮,可以用以下样式来屏蔽这个清除按钮
input::-ms-clear{display:none}
autocomplete = "off"
readonly/disable input 问题的更多相关文章
- 在IE下,如果在readonly的input里面键入backspace键,会触发history.back()
在IE下,如果在readonly的input里面键入backspace键,会触发history.back(), 用以下jQuery代码修正之 $("input[readOnly]" ...
- 关于iphone点击readonly的input虚拟键盘不消失的情况
今天遇到了一个比较棘手的问题,事情是这样的: 咱有一个添加地址的页面,大概长这样: 收货地址后那个"请选择收货地址"是一个readonly的input, 咱一进页面,直接点击这个& ...
- jquery 修改input输入框的 readOnly属性 && input输入框隐藏
html的代码 <div class="control-group"> <label class="control-label required&quo ...
- 解决IE下readonly的Input光标选中的问题
首先用unselectable="on"解决,但是这种方法bug太多, 屏蔽了input的onblur事件(也就是focus事件在Angualr下),所以只能用click事件来代替 ...
- html input readonly 和 disable的区别
Readonly和Disabled它们都能够做到使用户不能够更改表单域中的内容.但是它们之间有着微小的差别,总结如下: Readonly只针对input(text / password)和textar ...
- CSS中的disable,hidden,readonly
项目中有时候需要对某个input进行隐藏或者禁止修改等. 需要隐藏某个input的时候就用hidden <input hidden="true" > 如果要禁止修改in ...
- input/select/textarea标签的readonly效果实现
首先说一下readonly属性的应用场景 表单中,不能编辑对应的文本,但是仍然可以聚焦焦点 在提交表单的时候,该输入项会作为form的一项提交(目的) 这里要说一下disabled和readonly的 ...
- IE下只读INPUT键入BACKSPACE 后退问题(readonly='true')
在IE下,如果在readonly的input里面键入backspace键,会触发history.back(), 用以下jquery代码修正之 $("input[readOnly]" ...
- JQuery控制input的readonly和disabled属性
jquery设置元素的readonly和disabled Jquery的api中提供了对元素应用disabled和readonly属性的方法,在这里记录下.如下: 1.readonly $('in ...
随机推荐
- saltstack故障解决
[root@saltstack_s ~]# salt '*' test.pingSalt request timed out. The master is not responding. If thi ...
- VMware设置共享文件夹
第一步:安装vmware-tools
- C#和VC++字符集和编码
C# char 关键字用于声明 .NET framework 使用 Unicode 字符表示 System.Char 结构的实例. Char 对象的值是 16 位数字 (序号值.)将字符表示为 UTF ...
- SQL Update实现使用一个表的数据更新另一张表
表结构 功能 SQL Serevr Access 表结构
- 提高你的C#程序编码质量
摘自陆敏技之<编写高质量代码:改善C#程序的157个建议>,编写C#程序代码时应考虑代码效率.安全和美观,可参考下述建议.想成为一名合格的搬砖工,牢记吧!! 基本语言要素 1.正确操作字符 ...
- Android 开发环境搭建以及编译
两种搭建编译环境的方式,一种方法是用户安装虚拟机,然后安装基础的Ubuntu12.04.2 系统,利用提供的工具和详细的使用步骤,搭建编译环境:另外一种方法是用户安装虚拟机,然后直接加载 “搭建好的U ...
- 移动端<head>头部 常用<meta>标签
<!DOCTYPE html><html lang = ""><head> <title></title> <me ...
- 使用Genymotion来运行Android Studio开发的程序
访问网址:https://www.genymotion.com,注册账户,之后下载,下载时需要注意不要选择(withou virtualbox那个) 之后运行安装, 运行Genymotion运行启动G ...
- nyist 626 intersection set
http://acm.nyist.net/JudgeOnline/problem.php?pid=626 intersection set 时间限制:1000 ms | 内存限制:65535 KB ...
- [原创] 分享一些linux教程
书<鸟哥的linux私房菜第三版>,链接:http://pan.baidu.com/s/1i3femnr 配套视频,链接:http://pan.baidu.com/s/1v72xw --- ...