function titlepopup()
        {
            var p=window.createPopup();
            var pbody=p.document.body;
            pbody.style.backgroundColor="yellow";
            pbody.style.border="solid black 1px";
            var sid = window.event.srcElement.id;
            var showTitle = $("#<%=window.event.srcElement.id%>").attr("title");
            pbody.innerHTML=showTitle;
            p.show(150,150,200,50,document.body)
        }
目的是像获取事件源的控件id,然后获取title,并在popup里面显示
但是在vs2008启动调试的时候就在页面报错,提示“应该输入}”
具体是var showTitle = $("#<%=window.event.srcElement.id%>").attr("title");这一行。
麻烦大家帮我看看哪里有问题,谢谢

解决方案 »

  1.   

    试试 var showTitle = $("#"+<%=window.event.srcElement.id%>).attr("title");
    不知对否
      

  2.   

    var showTitle = $("#sid").attr("title");这样试试
      

  3.   

    2楼的方法生成时通过了,但是最后没有弹出我要的popup,麻烦继续帮我看看。谢谢
      

  4.   

    var showTitle = eval('$("#' + sid + '").attr("title")');
      

  5.   

    你想要的大概是 var showTitle = $("#"+sid).attr("title");
    看得晕死<%=window.event.srcElement.id%>干什么用啊??
      

  6.   

    还有,window.event.srcElement方法有浏览器兼容问题。既然用了jquery,就该绑定事件到事件源,然后通过this传入id
      

  7.   

    目的是像获取事件源的控件id,然后获取title,并在popup里面显示触发事件的控件是<img id="img1" onclick="titlepopup()" title="abc" />然后点击这个img,弹出popup,popup里面显示title但是不知道为什么弹不出来
      

  8.   

    var sid = window.event.srcElement.id;
    这里你已经把window.event.srcElement.id付给了sid;你还这样
    var showTitle = $("#<%=window.event.srcElement.id%>").attr("title");那你SID声明来干嘛呢,所以
    var showTitle = $("#"+sid+").attr("title"); 这样再试试吧
      

  9.   

    我最后通过传入this解决了。。谢谢哈。