给img一个名字,用id来比对!

解决方案 »

  1.   

    div1.innerHTML="<img src='alert.gif' align='absmiddle' />";
    if(div1.innerHTML.replace("http://localhost:8080/","")=="<img src='alert.gif' align='absmiddle' />"){} //但这里得到的是false
    //然后我用
    alert(div1.innerHTML)
    //发现他变为"<img src='http://localhost:8080/alert.gif' align='absmiddle' />"
      

  2.   

    我不知道lz具体想做的业务是什么,但是想lz这样比较innerHTML的内容的用的很少,lz完全可以比较其他的属性得到同样的结果.比如比较img的id或name之类的.
      

  3.   

    或者说,我如何知道我的
    <img src='alert.gif' align='absmiddle' />
    在div.innerHTML里面会变成什么样子
    在js中有哪个方法呢
    谢谢
      

  4.   

    可以将通过div1.innerHTML这种方式得到的img的本地代码:"<img src='http://localhost:8080/alert.gif' align='absmiddle' />"
    判断出,src的值,将其src中的网络路径干掉,然后拼接出来。
    代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
    </head>
    <body>
    <div id="div1"></div>
      <script type="text/javascript">
        document.getElementById("div1").innerHTML="<img src=\"s.jpg\" align=absmiddle />";
        var t = document.getElementById("div1").childNodes[0];
        alert("改变前:"+t.outerHTML);
        var t1 = t.outerHTML.split("http://")[1].split('/');
        var t2 = t1[t1.length - 1];
        var imgStr = t.outerHTML.split("http://")[0] + t2;
        alert("改变后:" + imgStr);
      </script>
    </body>
    </html>
      

  5.   

    才记起来。  地址是会变的 - -
    给LZ个正则吧。。
    var ts="<img src='http://localhost:8080/alert.gif' align='absmiddle' />";
    reg=new RegExp("^.*(http:\/\/[^\/]*\/).*$");
    reg.test(ts);
    if(ts.replace(RegExp.$1,"")=="<img src='alert.gif' align='absmiddle' />")
    alert('成功了');
      

  6.   

    先谢谢楼上各位,但这种方法还是不好
    ----------------------------------------
    如我先说一下我的环境
    首先我会给div.innerHTML赋一些数据
    如"<img src='http://localhost:8080/alert.gif' align='absmiddle' />"; 
    这里只是比如,数据由用户自己去定的
    然后我又会对这个Div.innerHTML进行某些操作或不操作
    最后我要判断DIV.innerHTML里面的内容是否还是我最初给他赋值的内容所以上面说的用正则的也不然解决我的问题,如用户又加了地址而给正则掉过滤了,那也不对本来我想用var ts = "<img src='http://localhost:8080/alert.gif' align='absmiddle' />"; 
    div.innerHTML=ts;
    ts=div.innerHTML;但我的ts还是没有改变
    我想应该是div显示完成的时候他才更改他的innerHTML
    那有没有什么办法我预先知道我的
    "<img src='http://localhost:8080/alert.gif' align='absmiddle' />"; 
    在div.innerHTML里面会变成什么样子
    然后我就可以用var ts = "<img src='http://localhost:8080/alert.gif' align='absmiddle' />"; 
    ts=GetDivInnerHTMLTemplate(ts);//这里得到DIV内容会变成的html样子
    div.innerHTML=ts;
    .... //其他操作
    if(div.innerHTML==ts)
    {
       //这样来判断应该就OK了
       //那上面的GetDivInnerHTMLTemplate()如何来写呢
    }
      

  7.   

    那你在页面上偷偷的放一个div2,设置为隐藏!无论div1怎么操作,反正div2中就是你放进去的原始值,而且已经到了页面上,已经变成客户端值了。
    这样,你就可以比较div1中的innerHTML与div2的innerHTML值,是否相等!就可以判断出,div1是否被操作过了!
    代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
    </head>
    <body>
    <div id="div1"></div><div id="div2" style="display:none"></div>
      <script type="text/javascript">
          document.getElementById("div1").innerHTML = "<img src=\"s.jpg\" align=absmiddle />";
          document.getElementById("div2").innerHTML = "<img src=\"s.jpg\" align=absmiddle />";      if (document.getElementById("div1").innerHTML == document.getElementById("div2").innerHTML) {
              alert("值没有改变!");
          }
          
      </script>
    </body>
    </html>
      

  8.   


    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>新建网页 1</title>
    </head><body>
    <div id=div1> </div>
    <div id=hiddiv style="visibility:hidden;position:absolute;top:9999px;left:-9999px;"> </div><script language="javascript">
    <!--
    hiddiv.innerHTML=div1.innerHTML="<img src='alert.gif' align='absmiddle' /><br>等等等等等等";
    if(div1.innerHTML==hiddiv.innerHTML){alert(div1.innerHTML);alert("OK")}//-->
    </script>
    </body></html>
      

  9.   


    <html><head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>新建网页 1</title>
    </head><body>
    <div id=div1> </div>
    <div id=hiddiv style="visibility:hidden;position:absolute;top:999px;left:-9999px;"> </div><script language="javascript">
    <!--
    hiddiv.innerHTML=div1.innerHTML="<script defer>var ttt=0</script><img src='alert.gif' align='absmiddle' /><br>等等等等等等";
    if(div1.innerHTML==hiddiv.innerHTML){alert(div1.innerHTML);alert("OK")}//-->
    </script>
    </body></html>