jquery中的select()方法是选中了一个document对象,如何在选中之后获取对象的值之后释放这个对象啊?
比如这段代码:
function getValueIE8(id){
var ip = document.getElementById(id);
ip.select();
return document.selection.createRange().text;
     }这段代码为了兼容性而写的,单个图片预览获取file控件的值好使,我现在要预览3张图片也就是有3分个file
id分别为fileId1,fileId2,fileId3   我分明是选择了3张不同的图片,但是现在点击预览后 预览了3张同样的图片,
我估计上面那段代码的ip.select()的原因,那么我获得了返回值后如何释放对象啊?
谁告诉下 谢谢

解决方案 »

  1.   

    没人会?还是没看懂啊?那有没有人知道在select()之后如何释放这个对象啊?
      

  2.   

    谢谢回答。。不过貌似不好用啊我还是把我代码贴出来吧
    var file = getValueIE8("fileId1");//document.getElementById("fileId1").value;
    var div = document.getElementById("imgdiv");
    if(file!=""){
    div.style.display="block";
    div.style.width = imgWidth;
    div.style.height = "200px";
    div.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
    div.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src=file;
    }
    else{
    div.style.display="none";
    }var file2 = getValueIE8("fileId2");//document.getElementById("fileId2").value;
    var div2 = document.getElementById("imgdiv2");
    if(file2!=""){
    div2.style.display="block";
    div2.style.width = imgWidth;
    div2.style.height = "200px";
    div2.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
    div2.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src=file2;
    }
    else{
    div2.style.display="none";
    }var file3 = getValueIE8("fileId3");//document.getElementById("fileId3").value;
    var div3 = document.getElementById("imgdiv3");
    if(file3!=""){
    div3.style.display="block";
    div3.style.width = imgWidth;
    div3.style.height = "200px";
    div3.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
    div3.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src=file3;
    }
    else{
    div3.style.display="none";
    }因为用document.getElementById取对象 有的IE8版本不支持,所以用了getValueIE8那个方法。。
    但是现在取到的file1 file2 file3 居然相等了。。尴尬啊
    这个getValueIE8的方法
    function getValueIE8(id){
    var ip = document.getElementById(id);
    ip.select();
    return document.selection.createRange().text;
      }哪位大侠告诉我一下哦!!!!!
      

  3.   

    你不是说用jquery吗?直接用jquery id选择器就可以了阿
     $('#id)
    ,而且你的select()方法似乎没见过阿,好像没这种用法吧
      

  4.   

    你的select方法是由javascript对象调的,不是jquery对象调的
      

  5.   

    jquery里面确实有select()方法。
      

  6.   

    To 7楼
    lz用的是js对象调的,不是jquery对象,我是说js没有这个方法
      

  7.   

    7楼就是楼主。。也就是我甭管有没有了好嘛大家看看这个代码,因为document.getelementbyid取值时IE678都好用,但是有的IE8不好用,是的你没看错,同样是IE8有的好用有的不好用,当用getValueIE8取值时,单图预览IE678就都好用了,但是我预览3张图片就不好用了,谁知道怎么回事啊,因为是取值的地方出的问题,所以我认为是getValueIE8里面的方法的问题,所以谁能告诉我答案啊!!!!!!!!!!!!!!!!!
      

  8.   

    额。。这个问题自己解决了。。我把路径存到了隐藏域hidden里,IE678都认了
    算了,果断结贴!
      

  9.   

    如果你是在ie8的话最好取表单的名称或name,用js和jquery取id好像都不好。直接用getElementsByTagName(表单名称)或者用getElementsByName(name)吧。