echo "<script language='javascript'>";
echo "alert('您已经缴费<br>其中操作成功:".$ok."条;操作失败:".$err."条;忽略:".$hl."条;<p><a href=\"a.php?action=sa\"><u>确定</u></a> <a href=\"a.php?file=print&id=".urlencode($ids)."&k=".$k."\" target=_blank><u>打印</u></a></p>');";
echo "</script>";这个现在能弹出窗口,但是那些<br> <a href也都显示着呢,怎么样就正常了?感谢各位!

解决方案 »

  1.   

    html标签在JS中是不行的,你这种的弹出可以用JQUERY来配合做。网上例子多。
      

  2.   

    alert 弹窗不支持 html 语法。
    可以用jquery 模拟的 模态对话框。
      

  3.   


    这样是可以的不过楼主可以考虑把那些固定的东西不要放入到PHP中, 而是把变化的东西使用变量嵌入, 你的代码可以改造为下面这样:
    <?php
    //这里业务处理来生成你下面要用的值
    ?>
    <script language="javascript">
    var data_ok = '<?php echo $ok; ?>', 
        data_err = '<?php echo $err; ?>', 
        data_hl = '<?php echo $hl; ?>', 
        ids = urlencode('<?php echo $ids; ?>'), 
        k = '<?php echo $k; ?>', 
        msg = "您已经缴费<br />" + 
              "其中操作成功{ok}条; 操作失败: {err}条; 忽略: {hl}条;" + 
              "<p>" + 
                  '<a href="a.php?action=sa"><u>确定</u></a>' + 
                  '<a href="a.php?file=print&id={ids}&k={k}" target="_blank"><u>打印</u></a>' + 
              "</p>";
    msg.replace("{ok}", ok).replace("{err}", err).replace("{hl}", hl).replace("{ids}", ids).replace("k", k);
    alert(msg);
    </script>实际上就是模板化的思想, 不过直接这样用的时候小心里面的特殊值 ...
      

  4.   


    如3楼所说, alert不支持语法, 换个行是可以的, 但其他的就不行了, 换行不再用<br />, 而是用\n