javascript - JavaScript 中的错误消息

标签 javascript

我有一个 PHP 代码:

  if($billing_total>$limit_to_send){

    echo '<script type="text/javascript">
    window.onload = function() {
    alert("Sorry, you do not have enough credit");
 }
   </script>';

当我打印此消息时,它被打印在 PHP 页面的开头,如下所示:

  <script type="text/javascript">
                window.onload = function() {
                alert("Sorry, you do not have enough credit");
             }
               </script>

        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        -----------------------------------------------------------

这导致浏览器中我的页面的标题( Logo )向下移动一行。

页面看起来会很糟糕,因为所有项目都会向下移动一行。

希望您清楚。请问有什么解决办法吗?

================================================== =============================

感谢大家...

解决方案:

$alert_message=<script type="text/javascript">
    window.onload = function() {
    alert("Sorry, you do not have enough credit");
 }
   </script>

在 HTML 代码中 body 标记之前的某个位置打印 $alert_message ^_^

最佳答案

确保在 DTD (doctype declaration) 之前不会输出任何内容.

参见this question欲了解更多信息...

doctype 声明必须是 html 页面的第一个元素,浏览器决定如何处理其余的 html 代码。在此之前输出任何内容可能会将您的浏览器置于 quirks mode因此您无法确定浏览器将如何呈现您的页面。

<小时/>

如何避免这种情况?

echo命令在到达其行时被执行,并且似乎您的 html 代码的其余部分紧随其后。

你可以

  • 将 html DTD 和 header 移至 php 的顶部(但有时这是不可能的)或
  • 将错误 html 存储在变量中,而不是 echo '<script ...$errorhtml = '<script ...并在 php 的头部或正文生成代码的特定位置输出该字符串(如果不为空)。
  • 如果您无法控制原始来源,您可以考虑重定向到带有自己的 html DTD、 header 和正文的错误页面,您可以设计最适合您的内容。

关于javascript - JavaScript 中的错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9663862/

相关文章:

javascript - CKEditor:在粘贴上应用 removeFormat

javascript - 如何在索引中使用表达式时遍历数组数组

javascript - 如何修复此 ""ESLing 错误?

javascript - 对于多系列图表,仅在 FusionCharts "plotToolText"中打印一次标签

javascript - Ember 数据异步关系的聚合

javascript - jQuery - 鼠标输入闪烁图像

javascript - 使用 javascript/html5/angularjs/jquery 读取包含文件/子文件夹的文件夹的内容

javascript - 在 Firebase 函数中计算后删除传入的写入事件

javascript - 如何在将 html 表导出到 xls 文件时设置分隔符,以便在使用 openOffice calc 打开文件时不会单独要求分隔符?

javascript - 变量成功 : of Ajax which is running in a loop not being updated