如果我定义一个字符串叫<scrrpt>alert('a')</scrrpt>.
我如何把这个字符换显示在文本框里,而不让它当做脚本执行。在线等待求租,我用的是MOOTOOLS框架

解决方案 »

  1.   

    lblVideo.Text="<scrrpt>alert('a')</scrrpt>."
      

  2.   


    <input value="&lt;script&gt;alert('a')&lt;/script&gt;">
      

  3.   

    你让文本框的value的值等于那个字符串就行了
      

  4.   

    谢谢各位,我可能没说清楚。贴上代码JS  var noteLabel = new Element('td',{
                    'html': note,
                    'title':note,
                    'class':'ellipsis',
                    'align':'left',
                    'styles':{
                        'cursor':'default',
                        'white-space':'normal',
                        'word-wrap':'break-word',
                        'width':'960px',
                        'overflow':'hidden'
                    }
                }).inject(objRow); 
        MOOTOOLS框架我这里生成一个label对象其中的note是传入参数,是从数据库里读取出来的(可以是任何字符换)。现在的要求是如果这个字符串是<scrrpt>alert('a')</scrrpt>。那么我如何使用这段JS直接让它显示出来而不是执行这个<scrrpt>alert('a')</scrrpt>脚本。
      

  5.   

    呵呵 怎么解决的。
    其实我之前也做过类似的东西
    我当时的方法是动态获取内容后只写入script标签里面的内容
    而不写script标签 这样脚本就不会运行
    然后等body onload后再用脚本给写入的那段内容加上script标签即可
      

  6.   

    JSON向CS文件发送请求返回的数据时一串JSON格式的字符串。我在组合这个字符串的时候就可以这样写。
      
    StringWriter sw = new StringWriter();
      JsonWriter jw = new JsonWriter(sw);
      ...
      jw.Writevalue(server.HTMLencode(ds.table[0].rows[0]["所需字段"]));//这里的server.htmlencode 就会吧获得数据转化为HTML格式的数据所以最后显示的时候就原本原的显示出来了而不会执行脚本
      ...