日期:2014-05-18  浏览次数:20551 次

求救~~~~~~~~~~~~~~~~~~~~~~~~~双引号、单引号问题~~~~~~~~~~~~~
 
页面本来要实现的效果:  
<div style="WIDTH:15px;" onmouseover="dd('药王庙')" onMouseOut="dc()">aaaaaaaaaaaaa</div>


现在上面代码加在了程序中,并且因为要加变量所以,双引号内改为定量,原来的双引号变为单引号,那么原来的单引号该改成什么呢? 'ShowTips(" + Rs + ")' ,这个RS要求必须由单引号括起来才可以。

...
this.MapControl1.CustomLayer.Marks.Insert(aa, mc.X, mc.Y, "<div style='WIDTH:15px;' onmouseover='ShowTips(" + Rs + ")' onMouseOut='ShowTips1()'>" + j + "</div>");

...


引用
  <script>
  function dd(me){
  alert(me);
  }
  </script>

------解决方案--------------------
this.MapControl1.CustomLayer.Marks.Insert(aa, mc.X, mc.Y, " <div style='WIDTH:15px;' onmouseover='ShowTips(\"" + Rs + "\")' onMouseOut='ShowTips1()'>" + j + " </div>");
------解决方案--------------------
this.MapControl1.CustomLayer.Marks.Insert(aa, mc.X, mc.Y, " <div style='WIDTH:15px;' onmouseover='ShowTips(\"" + Rs + "\")' onMouseOut='ShowTips1()'>" + j + " </div>"); 
转义,转义啦!!
------解决方案--------------------
\" = "
转义掉.
------解决方案--------------------
探讨
加一个@即可,比转义方便
===============
@" <div style="WIDTH:15px;" onmouseover="dd('药王庙')" onMouseOut="dc()">aaaaaaaaaaaaa </div>"

------解决方案--------------------


javascript 表示字符串,可以用 " " 也可以用 ' '
如果你怕跟 C# 混淆了,就把 js 的全部用 ' '

这样你的程序就清晰了.

实在不行.你就把这个字符串 Response.Write( ........ ) 出来.
看看错在哪里

学会自己找问题,这样以便提高自升(只是建议,欢迎拍砖)

注:你的有HTML 代码,如果要看输入的字源串,要在客户端的"源代码"中看
------解决方案--------------------
探讨
引用:
加一个@即可,比转义方便
===============
@" <div style="WIDTH:15px;" onmouseover="dd('药王庙')" onMouseOut="dc()">aaaaaaaaaaaaa </div>"



...........
这样编译能通过了????

------解决方案--------------------
探讨
this.MapControl1.CustomLayer.Marks.Insert(aa, mc.X, mc.Y, " <div style='WIDTH:15px;' onmouseover='ShowTips(\"" + Rs + "\")' onMouseOut='ShowTips1()'>" + j + " </div>");