为什么内联<script>标记不显示值?

时间:2019-06-18 10:13:09

标签: jquery html

Screen我需要将服务器接收的值(字节转换为MB)。我唯一的选择是嵌入脚本标记并运行转换该值的jquery函数。问题是内联脚本不会向html返回任何值。

function formatFileSize(bytes) {
    if (bytes == 0) return '0 Byte';
    return (bytes / Math.pow(1024, 2)).toFixed(2);
 }

HTML代码

 <td>
    <script>
         formatFileSize(DailyUsage.UsageVolume)
    </script>
</td>

3 个答案:

答案 0 :(得分:3)

因为没有任何内容将其输出到令牌流。您的所有功能只是返回该值,但是没有任何东西可以利用它返回的值。

您可以使用document.write输出它,当页面加载时,它将在<td></td>之间插入该输出:

<td>
    <script>
         document.write(formatFileSize(DailyUsage.UsageVolume))
    </script>
</td>

...但是,通常比输出带有许多script的内联document.write标签的输出信息更好的方法,请注意,您必须拥有一个称为DailyUsage引用具有UsageVolume属性的对象才能使其正常工作。

答案 1 :(得分:-1)

尝试一下:

<div id="result"></div> <script>
window.onload = function () {
    document.getElementById("result").innerHtml = formatFileSize(DailyUsage.UsageVolume);
}
</script>

您首先需要有一个html元素,然后将函数结果指向此HTML

答案 2 :(得分:-1)

您可以执行以下操作

<td id="content">
</td>


 <script>
     function formatFileSize(bytes) {
       if (bytes == 0) return '0 Byte';
          return (bytes / Math.pow(1024, 2)).toFixed(2);
      }
     document.getElementById("content").innerHTML = formatFileSize(DailyUsage.UsageVolume);
 </script>