js 动态控制 input 框 的只读属性
需求:
当下拉框的值为06即Voucher时, 文本框才可输入, 其他情况均为置灰不可录入状态.
问题:
设置input框的只读属性写成了readonly="true" 尼玛,坑死我了.下面才对: readonly="readonly"
<td>
Payment Mode
<select id="paymentMode" name="paymentMode" style="width: 155px" onchange="changeStyle()">
<option selected value="">-请选择-</option>
<option value="01">Cash</option>
<option value="02">Credit</option>
<option value="03">Debit</option>
<option value="04">Nets</option>
<option value="05">Cheque</option>
<option value="06">Voucher</option>
<option value="90">PresetCredit</option>
</select>
</td>
<td align="right">
Voucher Number
<input class="inuptxt ac_input" type="text" id="payNo" name="payNo" readonly="readonly">
</td>
<script>
//初始化voucherNo文本框
$(document).ready(function () {
var payNo = $("#payNo");
payNo.attr("readOnly","true");
payNo.css('background-color','#DEDEDE');
});
//voucherNo样式
function changeStyle(){
var paymentMode = $("#paymentMode").val();
// $("#payNo").css('background-color','#DEDEDE');//没毛病
var payNo = $("#payNo");
if(paymentMode!='06'){//没毛病
payNo.attr("readOnly","true");
payNo.css('background-color','#DEDEDE');
} else {
payNo.attr("readOnly",false);
payNo.css('background-color','#FFFFFF');
}
}
</script>
以下内容为转载:
input 框的只读属性: readonly
在页面中直接添加为只读时,可在input中直接添加 readonly="readonly",但是如果想通过点击按钮来改变的话,需要通过js(或jquery)来实现。
最近一次使用这个,终于发现了以前写这个js控制的时候为什么总是那么郁闷了,原来,js 在对于readonly、disabled等属性设置时,有一个小bug(至少我是这么认为):首先,document.getElementById("id").readonly = "true"; 设置input为只读,但是,当通过document.getElementById("id").readonly="false" 来去掉只读属性时,没有作用,此时,需要把 false 外面的引号给去掉js语句才能正常工作。
附:
1. jquery 通过id属性设置与取消只读属性
设置只读:$("#id").attr("readOnly","true");
取消只读:$("#id").attr("readOnly",false);//注意false不带引号!!!
2. jquery 批量设置与取消只读属性
/* id为sa的div中,所有input框 */
设置只读:$("#sa input").attr("readOnly","true");
取消只读:$("#sa input").attr("readOnly",false);
感谢:https://blog.csdn.net/katherine119/article/details/39154615
js 动态控制 input 框 的只读属性的更多相关文章
- php页面输出时,js设置input框的选中值
/* 设置表单的值 */ function setValue(name, value) { var first = name.substr(0, 1), input, i = 0, val; if ( ...
- js控制input框输入数字时,累计求和
input框输入数字时,自动开始计算累加 <div class="form-group"> <label for="inputPassword3&quo ...
- js控制 input框中输入数字时,累计求和
$('.cc input').bind('input propertychange', function(){ var total = 0; $("input").each(fun ...
- JS 限制input框的输入字数,并提示可输入字数
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- js控制input框只能输入数字和一位小数点和小数点后面两位小数
<script language="JavaScript" type="text/javascript"> function clearNoNum( ...
- Js限制Input框只能输入数字
<input type="text" onkeyup="value=value.replace(/[^\d]/g,'')" /> <input ...
- js复制input 框中的值
function copy(){ var Url2=document.getElementById("copyValue"); Url2.select(); document.ex ...
- js对input框的可编辑属性设置
添加disabled属性 $('#areaSelect').attr("disabled",true); $('#areaSelect').attr("disabled& ...
- js-移动端android浏览器中input框被软键盘遮住的问题解决方案
我遇到的问题:在一个页面里有一个弹出层之前我给我的最外层加了固定定位 用了下面的方法也不好使:没有办法我将之改为绝对定位层级变高在加上一个顶部标签通过js计算顶部高度来实现满屏遮挡: <sect ...
随机推荐
- Android -- Annotation
Override Annotation @Override public void onCreate(Bundle savedInstanceState){}; 概念 An annotation is ...
- 怎样将 MySQL 迁移到 MariaDB 上
自从甲骨文收购 MySQL 后,由于甲骨文对 MySQL 的开发和维护更多倾向于闭门的立场,很多 MySQL 的开发者和用户放弃了它.在社区驱动下,促使更多人移到 MySQL 的另一个叫 MariaD ...
- SQL Server 多条查询结果组合
假如存在下面这张表users: 1.通过sql语句返回总人数.男生总数和女生总数 select count(1) '总人数', (select count(1) from users u2 where ...
- [Spring Boot] Complex Scope Scenarios of a Spring Bean - Mix Prototype and Singleton, ScopeProxy
We have the following example: @SpringBootApplication public class In28minutesScopeApplication { pri ...
- 其原因可能是堆被损坏,这也说明 xxx.exe 中或它所加载的任何 DLL 中有 bug
1.代码如下: string src ="abcdabcd"; char* dst = new char[8]; strcpy(dst,src.c_str()); delete[] ...
- ASP.NET 打包多CSS或JS文件以加快页面加载速度的Handler
ASP.NET 打包多CSS或JS文件以加快页面加载速度的Handler, 使用<link type="text/css" rel="Stylesheet" ...
- VMware vCloud Director network ports diagram
see:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&exter ...
- POSTGRESQL 支持正则表达式
昨天遇到了一个奇葩的问题,需要在WHERE条件里面添加正则表达式,抱着试试看的态度,查看了一下postgresql,发现确实可以支持正则,例如: select * from user where em ...
- Spark的运行模式(1)--Local和Standalone
Spark一共有5种运行模式:Local,Standalone,Yarn-Cluster,Yarn-Client和Mesos. 1. Local Local模式即单机模式,如果在命令语句中不加任何配置 ...
- 算法笔记_198:历届试题 打印十字图(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示: ..$$$$$$$$$$$$$....$...........$..$$ ...