在jsp上设置下来列表框select为只读,且保留原值

来源:互联网 发布:pe软件下载 编辑:程序博客网 时间:2024/05/17 06:58
 

一.方法为事件处理:

  function SetReadOnly(obj){  
     if(obj){  
         obj.onbeforeactivate=function(){return false;};  
         obj.onfocus = function(){obj.blur();};  
         obj.onmouseover = function(){obj.setCapture();};  
         obj.onmouseout = function(){obj.releaseCapture();};
      
     }  
 }

二.如果是在编辑页面,要求列表为只读且变灰,且在提交表单时候保留原值则,jquery的写法:

  注意:要导入jquery的组件

    var it=["level","possibility","priority"];//将标签的Id放入数组中
    $.each(it,function(index,value){
      SetReadOnly($("#"+value).get(0));//调用上边的方法
      $("#"+value).after("<input type='hidden' name='"+$("#"+value).attr("name")+"'          value='"+$("#"+value).val()+"' /> ");
       $("#"+value).attr("disabled","disabled");
       $("#"+value).css("color","gray");
    }); 

此写法跨浏览器

上面方法的总结:将select设置为disabled的同时,把其值赋给一个与select相同name的隐藏域,这样就可以即使只读后台还能获取到值的效果。

原创粉丝点击