如何在plone网站中调用javascript

时间:2013-09-18 05:12:48

标签: javascript plone

我有一个导航portlet下的html文件。我想从导航portlet中的一个html文件中调用javascript。我把javascript文件放在自定义下并在portal_javascript注册表中注册了javascript。但我仍然无法调用javascript。

这是html页面:

<script language="Javascript" type="text/javascript" src="calculatemyval.js"></script>
<form name="addition">
      <tbody><tr>
        <td>Value 1: <br>
        </td>
        <td>
          <input size="5" name="v1" type="text">
          in kg <br>
        </td>
        </tr>
        <tr>
         <td>Value 2 : <br>
         </td>
        <td>
          <input size="5" name="v2" type="text">
          in cm <br>
        </td>
       </tr>
       <tr>
        <td>&nbsp;<br>
        </td> 
        <td>
          <input value="calc" onclick="calcvalue()" name="button" type="button"><br>
          </td>
        </tr>
        <tr>
        <td>Result: <br> </td>
        <td><input name="result" size="5" readonly="readonly" type="text">
        <br></td>
      </tr>
      </tbody>
      </form>

这是我的剧本:

calculatemyval.js

<script type="text/javascript">
  function calcvalue(){
    var h = document.addition.v1.value;
    var g = document.addition.v2.value;
    var res = 0;
    if (h > 0){
       h = h / 100.0;
       res = g / (h * h);
       res = Math.ceil(res * 10) / 10
       document.addition.result.value = res;
   }
  }
  </script>

由于

2 个答案:

答案 0 :(得分:0)

您不需要已经指定为Javascript的文件中的<script>标记:

  function calcvalue(){
      var h = document.addition.v1.value;
      var g = document.addition.v2.value;
      var res = 0;
      if (h > 0){
          h = h / 100.0;
          res = g / (h * h);
          res = Math.ceil(res * 10) / 10
          document.addition.result.value = res;
      }
  }

这应该是您文件的唯一内容。

答案 1 :(得分:-1)

HTML

 <html>
     <head>
         <script src="scripts.js"></script>
    </head>
    <body>
    </body>
</html>

您的JS文件必须与HTML文件位于同一文件夹中。