处理jquery 中 给disabled属性不传值的问题

问题:审核页面加入不可编辑的判断后,点击【审核】按钮,报错,form表单的数据没有传递过去。

下面是js中加入的代码,用来判断是否是审核页面的,去掉此代码,点击【审核】按钮能正常传递数据,加入的话,无法传递。

    if (data.WF_W_STATUS > 0 && data.WF_W_STATUS != 2) {
                $(‘input,textarea‘).attr("disabled", "disabled");
            }

问题详解:

在form表单里,如果对input加入disabled="disabled"或disabled="true"等属性,form表单提交的时候,就不会传值到后台。

原因:在HTML页面的某元素加入了disable的属性,那么这个元素只是单单的去给用户去显示,当表单提交时,这个元素不会提交给后台去处理.所以当元素加入了disabled属性,后台是无法得到这个属性的值.

解决方法:再写一个隐藏属性,一个用于显示,一个用于传值。

处理方式:

1.首先去掉js中的input的,改成:input[type=text],这样只是用来隐藏类型为text,textarea的,

 
(data.WF_W_STATUS > 0 && data.WF_W_STATUS != 2) {
                $(‘:input[type=text],textarea‘).attr("disabled", "disabled");
            }

同时在提交的表单加入被隐藏的类型的字段

    <input type="hidden" id="XSBH" name="XSBH" />
    <input type="hidden" id="WORKFLOWID" name="WORKFLOWID" />
    <input type="hidden" id="WF_W_STATUS" name="WF_W_STATUS" />
    <input type="hidden" id="WF_T_NODENAME" name="WF_T_NODENAME" />
    <input type="hidden" id="WF_T_AUDITNAME" name="WF_T_AUDITNAME" />
    <input type="hidden" id="WF_T_AUDITSTATE" name="WF_T_AUDITSTATE" />

  

放在表单中,让表单提交的时候提交的是隐藏类型,不过要注意,加载disabled的前后传值,不然会出现覆盖的情况。

时间: 2024-08-29 12:26:13

处理jquery 中 给disabled属性不传值的问题的相关文章

jQuery中的css属性对应名称

css中一些样式属性可以直接引用到jquery中,但是有些属性在jquery中与在css中有些区别,下面就是一些常用属性在css与jquery中的名称. jQuery中的css属性对应名称 css jQuery bottom bottom left left right right top top width width min-width minWidth max-width maxWidth height height min-height minHeight max-height maxH

jQuery 中get 和post 方法传值注意事项

用 jQuery 的都知道,jQuery 的 get 和 post 方法有三个参数:地址,数据 和回调函数,但我们知道地址也可以跟随数据的(形如:get_data.php?v1=1&v2=2),而且第二个参数可以省略,即第二个参数可 以直接写回调函数,那么数据写在地址后面和写在 data 参数里有什么区别呢? 刚刚做了几个实验,看看下面的代码就清楚了:以下内容需要回复才能看到 jquery_data.php echo "post: ";print_r($_POST);echo

jQuery中样式和属性模块简单分析

1.行内样式操作 目标:扩展框架实现行内样式的增删改查 1.1 创建 css 方法 目标:实现单个样式或者多个样式的操作 1.1.1 css方法 -获取样式 注意:使用 style 属性只能获取行内样式 解释:获取类或者外部样式文件中设置的样式要使用 W3C规范:window.getComputedStyle(dom) IE中 :dom.currentStyle itcast.fn.extend({ css: function(name, value) { return window.getCo

整理IOS中Block用作属性、传值、回调用法

1.block用作属性 封装一段代码 在模型类中声明block属性 ,注意block的属性要使用copy否则会出问题 @property (copy, nonatomic) void (^actionBlock)(); @property (copy, nonatomic) void (^actionWithPapameterBlock)(int papameter); @property (copy,nonatomic) NSString *(^actionToReturnStirng)();

jquery中event对象属性与方法小结

JQuery事件中的Event属性是经常性的被忽略的.大多数时间你的确不怎么用它,但有些时候它还是它还是有作用的.如获知触发时用户的环境(是否按了shift etc).每个浏览器对event都有不同的地方,Jquery对Event做了标准化所以可以放心用. * .target  这个反应触发事件的DOM对象,可以在事件冒泡的时候判断是否是事件源头(compare event.target to this) * .pageX:  鼠标的left属性,相对于page * .pageY:  鼠标的to

关于Jquery中radio的属性设置,是attr,还是prop问题

自己做的一个小的项目员工项目管理中,由于用到Ajax,所有用了jquery,而在人管理中的,人的性别设置单选radio,默认为男的,源代码如下 <input type="radio" value="男" name="sex" id="sex" checked="checked"/>男 <input type="radio" value="女" nam

jQuery中animate设置属性的一个问题

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <script src="../js/jquery-2.1.4.min.js"></script> <style> .bigger, .smaller { display: inlin

jquery设置元素readonly与disabled属性的方法

分享下jquery设置元素readonly与disabled属性的方法,设置元素的显示与隐藏,元素的只读属性. 以下内容转自:http://www.jbxue.com/article/15102.html 略作修改与补充. Jquery的api中提供了对元素应用disabled和readonly属性的方法: 1,设置readonly属性 $('input').attr("readonly","readonly")//将input元素设置为readonly $('in

css3中的部分属性

1.阴影box-shadow:x轴偏移量 y轴偏移量 [阴影模糊半径] [阴影扩展半径] [阴影颜色] [投影方式] 注意:inset(内阴影) 可以写在参数的第一个或最后一个,其它位置是无效的实例 正值表示在对象的底部,负值表示在对象的顶部. .boxshadow-outset{ width:100px; height:100px; box-shadow:4px 4px 6px blue,4px 4px 6px red inset; } .boxshadow-inset{ width:100p