2012-07-30 52 views
0

我有一个JavaScript函数DisableDuedate(),它根据登录用户禁用td标签。 td标签包含一个填充在Page_load(页面背后的vb代码)的文本框。 的DisableDueDate()函数被调用的HTML页面当div被禁用时td丢失值中的文本框

<body onload='scrollBar(null,null,"red");' onload='DisableDueDate();'> 

的功能在头标记

<script type="text/javascript" language="javascript"> 

      function DisableDueDate() 
      { 
       var udisable = '<%=dueDateDisabled %>'; 
                 if (udisable == "true") 
        document.getElementById("divduedate").setAttribute('disabled',true); 
       else 
        document.getElementById("divduedate").setAttribute('disabled',false); 

      } 
    </script> 

这工作得很好,但就是在td标签文本框的值定义当div标签被禁用时显示0。 如何在封闭div标签被禁用时保留文本框的值?

+1

div元素没有禁用属性。有fieldset(和浏览器应该禁用作为残疾字段集的后代的表单控件)。您可能会遇到错误恢复,并且浏览器将div视为字段集。尝试坚持有效的HTML。不要禁用div - 这是没有意义的。 – Quentin 2012-07-30 16:45:59

+0

请注意,Internet Explorer会继承并嵌套disabled属性。 – Lain 2015-06-05 13:50:50

回答

0

如果您使用的是jQuery,您可能希望将文本框的值保存在<div data-value="put it here">的html属性标记中,或$.data()中。

然后,只需启用它时,检查数据值是否存在,如果是这样,请将其放入文本框的值中。够简单!

+0

SORRY!该文本框位于td标签中,而不是div标签 – stackuser 2012-07-30 17:05:27

+0

是的!该文本框在td被禁用之前确实有一条线索。 – stackuser 2012-07-30 17:09:07

相关问题