Oracle Apex表格形式的动态操作

时间:2015-04-06 14:23:28

标签: dynamic resources oracle-apex tabular-form

我正在开发一个应用程序,用于捕获团队中每个人的资源利用率。

我完成了所有的事情并且坚持了一点,即

请找到图片的以下链接(我无法在此处上传图片,因为我是新用户)

http://s17.postimg.org/qgh6559rj/image.jpg

如上图所示,我为此创建了一个表格形式,其中月份是下拉列表,年份是文本框,日期1,2,3,....31是用于捕获使用时间的文本框。

我的要求是让那些不在那个月的日子变灰并锁定(不允许用户输入数据)。

ex: when Month : Feb then 29,30,31 : greyed out and locked

我在很多网站上搜索了解决方案,但我找不到。

1 个答案:

答案 0 :(得分:0)

嗨Aditya,
我试图解决这个问题。我创建了类似的表格形式,其中包含像day1,day2 ...第29天,第30天,第31天的colm。我只关注第29天,第30天,第31天,因为只有这些列会影响年度变化。我没有动态操作,而是在更改年enter image description here

时调用了JavaScript函数hideShow()

以下是hideShow的代码,其中f04,f05,f06是day29,day30,day31。 在这个功能中,我还增加了闰年的可能性

function hideShow(pThis)
{

   var month=$(pThis).closest('tr').find('[name="f02"]').val();
   var year=$(pThis).val();

    if (Boolean(parseInt(year) % 4 == 0)&&Boolean(parseInt(year) % 100 != 0)||Boolean(parseInt(year) % 400 == 0)) {
       if (month.trim()=='FEB') {
        $(pThis).closest('tr').find('[name="f05"]').attr("disabled","disabled");
        $(pThis).closest('tr').find('[name="f06"]').attr("disabled","disabled");
        }

     } 
     else {
        if (month.trim()=='FEB') {
         $(pThis).closest('tr').find('[name="f04"]').attr("disabled","disabled");
         $(pThis).closest('tr').find('[name="f05"]').attr("disabled","disabled");
         $(pThis).closest('tr').find('[name="f06"]').attr("disabled","disabled");
        }
     }

       if(month.trim()=='APR') {
         $(pThis).closest('tr').find('[name="f06"]').attr("disabled","disabled");
       }
       else if(month.trim()=='JUN') {
          $(pThis).closest('tr').find('[name="f06"]').attr("disabled","disabled");
       }
       else if(month.trim()=='SEP') { 
          $(pThis).closest('tr').find('[name="f06"]').attr("disabled","disabled");
       }
       else if(month.trim()=='JAN'||month.trim()=='MAR'||month.trim()=='MAY'||month.trim()=='JUL'||month.trim()=='AUG') {
         $(pThis).closest('tr').find('[name="f04"]').attr("disabled",false);
         $(pThis).closest('tr').find('[name="f05"]').attr("disabled",false);
         $(pThis).closest('tr').find('[name="f06"]').attr("disabled",false);

       }
 }

这里我只使用了disable / enable,同样也可以应用css运行时,希望这段代码能帮到你...