本帖最后由 mumubangditu 于 2010-11-03 19:27:58 编辑

解决方案 »

  1.   

    跟session没关系,都替换成空了,传什么
      

  2.   

    楼上正解  
    这一句 $s2 =str_replace(array('<p id="div1">','</p>'), array('', ''), $s1);
      

  3.   

    顶一下,怎样把DIV切换的值$s1 传递进INPUT VALUE按钮里?
      

  4.   

    去掉p标签用 strip_tags函数就可以了
      

  5.   

    $s3="<form name=\"input\" action=\"8.php\" method=\"get\"><input id=\"name\" name=\"name\" value=\"".strip_tags($s1)."\" type=\"hidden\"><input type=\"submit\" value=\"Submit\" /></form> ";
    echo $s3;试过用strip_tags,输出结果还是为空。
      

  6.   

    你的
    $_SESSION['aa']="<p id=\"div1\"></p>";
    $s1 = $_SESSION['aa'];
    是不是还这样? p里面什么都没有 去掉之后肯定什么都没有
      

  7.   

    是啊,为什么会什么都没有,难道我看的 echo $_SESSION['aa'] 值是一个虚拟的,不存在的值?
    我已经尝试简化我的代码了。难道连session都记不住这个值吗?
    heyli,你是不是已经想到解决方法了,能教授我吗?谢谢。
    <?php
    session_start();
    ?>
    <script language="javascript">
    function thelink(title)
    {
        document.getElementById('div1').innerHTML = title;
    }
    </script>
    <li><a href="#" title="http://www.google.com" onclick="thelink('http://www.google.com')">google</a></li>
    <li><a href="#" title="http://www.bbc.co.uk" onclick="thelink('http://www.bbc.co.uk')">bbc</a></li>
    <li><a href="#" title="http://www.cnn.com" onclick="thelink('http://www.cnn.com')">cnn</a></li>
    <?php
    $_SESSION['aa'] ='<p id="div1"></p>';
    echo $_SESSION['aa'];
    ?>
    <form name="input" action="8.php" method="get"><input id="name" name="name" value="<?php echo strip_tags($_SESSION['aa']); ?>" type="hidden"><input type="submit" value="Submit" /></form>
      

  8.   

    不是说 session记不住 
    你的$_SESSION['aa']是html代码 输出会直接给浏览器解析掉 所以你输出是看不到的echo htmlspecialchars($_SESSION['aa']); 这样才能看到输出的p标签
    $_SESSION['aa'] ='<p id="div1">aafasdfasd</p>'; 这样在input里面才有值 
    strip_tags会把 <p id="div1">  </p>去掉
      

  9.   

    那你的意思是:用我这种方法,永远无法把$s1的值传进input里面了?
    有没有别的方法?可以达到这种效果?
    切换不同的按钮,超链里的值传递进FORM INPUT VALUE的值里面去?(无刷新页面)
      

  10.   

    heyc1998:能不能帮我写一段呢?只要是这个效果的。
      

  11.   

    问题解决了,这个问题不是PHP能够解决的,而是需要修改JS代码。只要增加
    document.getElementById('myid').value = title;
    在JS里。然后在INPUT里设置下ID就可以了。我把解决方法贴出来和大家分享,并且感谢大家的帮助。