需求:

  当下拉框的值为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 框 的只读属性的更多相关文章

  1. php页面输出时,js设置input框的选中值

    /* 设置表单的值 */ function setValue(name, value) { var first = name.substr(0, 1), input, i = 0, val; if ( ...

  2. js控制input框输入数字时,累计求和

    input框输入数字时,自动开始计算累加 <div class="form-group"> <label for="inputPassword3&quo ...

  3. js控制 input框中输入数字时,累计求和

    $('.cc input').bind('input propertychange', function(){ var total = 0; $("input").each(fun ...

  4. JS 限制input框的输入字数,并提示可输入字数

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. js控制input框只能输入数字和一位小数点和小数点后面两位小数

    <script language="JavaScript" type="text/javascript"> function clearNoNum( ...

  6. Js限制Input框只能输入数字

    <input type="text" onkeyup="value=value.replace(/[^\d]/g,'')" /> <input ...

  7. js复制input 框中的值

    function copy(){ var Url2=document.getElementById("copyValue"); Url2.select(); document.ex ...

  8. js对input框的可编辑属性设置

    添加disabled属性 $('#areaSelect').attr("disabled",true); $('#areaSelect').attr("disabled& ...

  9. js-移动端android浏览器中input框被软键盘遮住的问题解决方案

    我遇到的问题:在一个页面里有一个弹出层之前我给我的最外层加了固定定位 用了下面的方法也不好使:没有办法我将之改为绝对定位层级变高在加上一个顶部标签通过js计算顶部高度来实现满屏遮挡: <sect ...

随机推荐

  1. [Math]理解卡尔曼滤波器 (Understanding Kalman Filter) zz

    1. 卡尔曼滤波器介绍 卡尔曼滤波器的介绍, 见 Wiki 这篇文章主要是翻译了 Understanding the Basis of the Kalman Filter Via a Simple a ...

  2. RNN(Recurrent Neural Networks)公式推导和实现

    RNN(Recurrent Neural Networks)公式推导和实现 http://x-algo.cn/index.php/2016/04/25/rnn-recurrent-neural-net ...

  3. vc2008中mfc菜单、控件等汉字显示为问号或乱码的解决方法

    在vc2008中建立基于mfc的project.在向导的Application type页面中如果在resource language选项中选择"英语(美国)"(图一),那么在pr ...

  4. cmake 学习笔记(三) (转)

    接前面的 Cmake学习笔记(一) 与 Cmake学习笔记(二) 继续学习 cmake 的使用. 学习一下cmake的 finder. finder是神马东西? 当编译一个需要使用第三方库的软件时,我 ...

  5. javascript中的关联数组

    所谓关联数组(associative array), 就是指javascript中的对象. 因为javascript中的属性就是一个个的键值对,可以通过obj[attr]的方式访问,很类似数组. 这种 ...

  6. 一起talk C栗子吧(第一百三十三回:C语言实例--创建进程时的内存细节)

    各位看官们.大家好,上一回中咱们说的是从内存角度看进程和线程的样例.这一回咱们说的样例是:创建进程时的内存细节.闲话休提,言归正转.让我们一起talk C栗子吧! 看官们.我们都知道使用fork函数能 ...

  7. C语言编程流程

     大家都知道,写程序大体步骤为:1.用编辑器编写源代码,如.c文件.2.用编译器编译代码生成目标文件,如.o.3.用链接器连接目标代码生成可执行文件,如.exe.但如果源文件太多,一个一个编译时就会特 ...

  8. 012-Go ORM框架之Gorm测试

    1:参考:https://github.com/jinzhu/gorm 2:数据库脚本(pg) -- create table posts( id serial primary key, conten ...

  9. 远程IPC种植木马

    要实现代码例如以下: ///////////////////////////////////////////////////////////////////////////////////// typ ...

  10. Vue项目的npm环境搭建

    Vue项目的环境搭建主要步骤如下: vue项目创建 安装NodeJS +到官网下载自己系统对应的版本,这里我们下载Windows系统的64位zip文件,下载完成后解压,可以看到里面有一个node.ex ...