本文主要是介绍泛微OA设置由于某一些条件的设置,让单元格的内容设置成只读和可编写两种状态,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
泛微OA设置当条件为什么的时候,控制单元格的只读和可编辑的属性
案例,当输入的人员等级在1-10之间的,设置下拉选择框可选,以及输入框可编辑。但是当人员等级在10以上的,设置下拉框不可编辑,以及输入框不能编辑
刚看到这个内容的时候,第一反应就是用attr来进行属性的控制
jQuery("#field1234_"+index).attr({"readonly":"readonly"});
但是这样的话呢,虽然在不满足条件的时候,的确让他属性只读了。可是在修改之后,满足条件了,这个还是只读,这个时候就需要判断了,当满足条件的时候,让他可编辑。**.removeAttr(“readonly”);**这个可以移除之前设置的只读属性
jQuery("#field1234_"+index).removeAttr("readonly");
这个时候,输入框的确是可以完成属性的控制,但是独立选择框却不可以用readonly来进行设置只读,可以通过**“attr(disabled”,true)**让他不可以选择。
jQuery("#field1234_"+index).attr("disabled",true);
同理,在满足条件的时候就需要重新让这个下拉选择框可以选择,这个时候直接将true改成false即可
jQuery("#field1234_"+index).attr("disabled",false);
还有一个需要注意的点就是在条件改变的时候,例如安全等级从10以上改成1-10的时候,就需要对之前填写的内容进行清空操作,这个时候需要使用
jQuery("#field1234_"+index).val("")
但是在这样清空的时候一定要注意条件的判断,否则会导致明明符合条件但是输入的数据一直被刷新置空这个是重中之重!!!!!!我之前就在这里踩过坑,如果实在是不知道自己的条件管控是不是对的,可以通过**console.log()**输出来进行查看
然后就是我当时在做这个的时候,想要清空下拉框的选项选择,我是用的:
jQuery("#field1234_"+index).find('option').remove();
但是这个会将所有的选项移除,当你改变条件的时候选项也不会回来然后还有一个代码是
jQuery("#field1234_"+index).empty();
这个也会清空选项。但是无法满足我的需求,让他在不满足条件的时候,清空所选内容,然后在满足条件的时候,可以进行选择,这一点我还没实现,如果你有答案的话,欢迎在评论区解答,不胜感激!!!!!
最后补充一点,如果你想每时每刻都进行判断的话,可以用定时器来实现,window.setInterval(“方法名”, 时间毫秒);,这个定时器就会按照你规定的时间毫秒数来进行重复的运行这个方法,就可以实现每时每刻进行判断的需求了
以上都是刚接触OA的我实现功能的一个思路,如果你们有更多更好的方法的话,希望能共同讨论一下~
这篇关于泛微OA设置由于某一些条件的设置,让单元格的内容设置成只读和可编写两种状态的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!