最近用PHP168做了个站,搞了特效栏目。就是平常网站看到到那种点击运行编辑框。实例:http://www.epaoba.com/bencandy.php?fid-54-id-2495-page-1.htm在后台通过textrea编辑进去的时候,有个处理的函数,把回车处理成了br。
所以前台读出来的是br,而不是回车,导致代码运行起来不正确。
我想将br替换成回车。我对PHP不大熟悉,找不到那段替换代码,即使找到我也不敢动,怕一动后台所有的都要动了。
所以跪求一段js代码。通过前台输出来弥补这个缺陷。跪求高手。。默默等待回帖,等..............

解决方案 »

  1.   


    window.onload=function(){
      var s = document.forms[0].txt.value;
      s = s.replace(/<br>/ig, "\n");
      document.forms[0].txt.value = s;
    }
      

  2.   


    <!--运行代码 --> 
    function runEx(cod1)  { 
    cod=document.all(cod1) 
      var code=cod.value; 
      if (code!=""){ 
      var newwin=window.open('','','');  //打开一个窗口并赋给变量newwin。 
      newwin.opener = null // 防止代码对页面修改 
      newwin.document.write(code);  //向这个打开的窗口中写入代码code,这样就实现了运行代码功能。 
      newwin.document.close(); 

    } //复制文本域代码 
    function cycode(obj) { 
    var rng = document.body.createTextRange(); 
    rng.moveToElementText(obj); 
    rng.scrollIntoView(); 
    rng.select(); 
    rng.execCommand("Copy"); 
    window.status="高亮度包含的代码已被复制到剪贴板!Contents highlighted and copied to clipboard!" 
    setTimeout("window.status=''",1800) 
    rng.collapse(false); 

    //另存代码 
    function svcode(obj) { 
    var winname = window.open('', '_blank', 'top=10000'); 
    winname.document.open('text/html', 'replace'); 
    winname.document.writeln(obj.value); 
    winname.document.execCommand('saveas','','code.htm'); 
    winname.close(); 

    </script>
    <textarea rows='12' cols='78' class='fm' id='code' name="content">
    这里放的是代码。
    </textarea>
    <input onclick="runEx('code')"  type="button" value="运行代码" onFocus="this.blur()" class="button_2"> 
    <input type="button" name="Submit" value="复制到剪贴板" onClick="cycode(code)"  onFocus="this.blur()" class="button_2">  
    <input type="button" value="另存代码" onclick="svcode(code)" onFocus="this.blur()" class="button_2">我该将你的代码写在哪里?上铺的兄弟
      

  3.   

    放到<script>中间<script>
    window.onload=function(){
      var s = document.forms[0].content.value;
      s = s.replace(/<br>/ig, "\n");
      document.forms[0].content.value = s;
    }
    </script>
      

  4.   

    function runEx(cod1)  { 
    cod=document.all(cod1) 
      var code=cod.value.replace(/<br\s*\/?>/g,"\n")
      

  5.   

    又是一个基础知识不过关...PS...document.all是ie的东西..
      

  6.   

    为什么不用fck之类现成的呢?
      

  7.   

    假设你的textarea的ID为textareaId
    <script>
    window.onload=function(){
      var s = document.getElementById("textareaId").value;
      document.getElementById("textareaId").value = s.replace(/<br\s*\/?\s*>/g, "\n");
    }
    </script>
      

  8.   

    <html>
    <head>
    <script>
    window.onload=function(){
        var obj=document.getElementById("code");
        obj.value=obj.value.replace(/<br>/gim,"\r\n");
    }
    </script>
    <textarea rows='12' cols='78' class='fm' id='code' name="content">
    abc<br>bcd
    </textarea>
    在window.onload里処理